前提・実現したいこと
現在、AtCoderの問題を解いています。問題の中で,ある整数が何個か与えられて、その整数が全て偶数のときは、2で割って、最大で何回2で割ることが出来るかというコードを書いています。
そこで、自分は①偶数判定関数、②半分にする関数を使って、実現させようと考えました。
コードを修正し、対応関係を直したいです。
発生している問題・エラーメッセージ
./Main.cpp: In function ‘int main()’:
./Main.cpp:12:28: error: a function-definition is not allowed here before ‘{’ token
int odd_even(int suuji()){
^
./Main.cpp:41:1: error: expected ‘}’ at end of input
}
^
該当のソースコード
C++
1#include<bits/stdc++.h> 2using namespace std; 3 4int main(){ 5 int N,cou=0; 6 cin >> N; 7 vector<int> vec(N); 8 for(int i=0;i<N;i++){ 9 cin >> vec.at(i); 10 } 11 12 int odd_even(int suuji()){ 13 int len; 14 string moji;**②** 15 len=suuji.size(); 16 for(int i=0;i<len;i++){ 17 if(suuji(i)%2==0){ 18 } 19 moji="even"; 20 return moji; 21 else{ 22 moji="odd"; 23 return moji; 24 break; 25 } 26 }**①** 27 } 28 int hanbun(int suuji()){ 29 int len; 30 len=suuji.size(); 31 for(int i=0;i<len;i++){ 32 suuji(i) /= 2; 33 } 34 } 35 while(odd_even(vec)=="even"){ 36 hanbun(vec); 37 cou++; 38 } 39 cout << cou << endl; 40} 41 42
試したこと
Atomのエディターで括弧の対応を調べたところ、main(){は①と対応し、odd_even関数は②の部分と対応してしまいます。
(①②はソースコード上の番号)
補足情報(FW/ツールのバージョンなど)
AtCoder上でプログラム動かしています。
C++初めて、3日ほどです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/04 09:42
2019/03/04 09:46
2019/03/04 11:03 編集
2019/03/04 11:01