結果

問題 No.49 算数の宿題
ユーザー sasa
提出日時 2025-03-10 09:56:53
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 552 bytes
コンパイル時間 499 ms
コンパイル使用メモリ 27,648 KB
実行使用メモリ 7,324 KB
最終ジャッジ日時 2025-03-10 09:56:54
合計ジャッジ時間 1,208 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 2 WA * 8
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:6:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    6 |         scanf("%s",str);
      |         ~~~~~^~~~~~~~~~
main.cpp:25:23: warning: ‘value’ may be used uninitialized [-Wmaybe-uninitialized]
   25 |         long long int ans = value[0];
      |                       ^~~
main.cpp:9:23: note: ‘value’ declared here
    9 |         long long int value[101];
      |                       ^~~~~

ソースコード

diff #

#include <stdio.h>

int main(){
	// 入力された文字列
	char str[101];
	scanf("%s",str);
	
	// 数値
	long long int value[101];
	// 記号
	char symbol[101];
	
	int j = 0;
	int k = 0;
	for (int i = 0; str[i] != '\0'; i++){
		if ('0' <= str[i] && str[i] <= '9'){
			value[j] = 10 * value[j] + str[i] - '0';
		}else{
			j++;
			value[j] = 0;
			symbol[k] = str[i];
			k++;
		}
	}
	long long int ans = value[0];
	for (int i = 1; i <= j; i++)
	{
		if (symbol[i - 1] == '*')
			ans += value[i];
		else
			ans *= value[i];
	}
	printf("%lld\n", ans);
}
0