Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 5.00
Valentiin
1 / 1 / 1
Регистрация: 01.05.2011
Сообщений: 13
Завершенные тесты: 1
#1

In function ‘int main()’: error: expected ‘(’ before ‘n’ - C++

26.02.2012, 23:04. Просмотров 1676. Ответов 4
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
using namespace std;
int main()
{
    double n;
    cout<<"Введите число\n";
    cin>>n;
    switch n
    {
        case ((n> -10*n) and (n<=0)): cout<<"попало в этот предел 1\n"; break;
        case ((n> 0) and (n<=5)): cout<<"попало в этот предел 2\n"; break;
        case ((n> 5) and (n<=10)): cout<<"попало в этот предел 3\n"; break;
        case ((n> 10) and (n<=10*n)): cout<<"попало в этот предел 4\n"; break;
        default : cout<<"никуда не попало\n"; break;
    };
    return 0;
}
В чем ошибка скажите плиз?? а то компилятор на линуксе ругается(
пишет:
g++ laba2.cpp
laba2.cpp: In function ‘int main()’:
laba2.cpp:8: error: expected ‘(’ before ‘n’
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.02.2012, 23:04     In function ‘int main()’: error: expected ‘(’ before ‘n’
Посмотрите здесь:

Ошибка In function `int main()': Разберемся в коде вместе - C++
Программировать только начал, столкнулся с такой проблемой. ;)

В чем разница между int main(){} и int main(void){}? - C++
Только недавно начал изучать язык, и появилось несколько вопросов: 1) в чем разница между int main(){} и int main(void){}? 2) в чем...

Компилятор выдает ошибку " in function int main ()" - C++
#include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; int main() { int a,b,v,z,n,i,mas; cout&gt;&gt;&quot;vvedite...

Error: no matching function for call to 'tan(float&, int)' - C++
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() { float x,A,Z,B,Betta, *a; int n,...

int main() или int main(void)? - C++
чем отличается : не сообщаю о наличии аргументов функция не принимает никаких аргументов.......

Какой новые синтаксис: int main() VS. void main() - C++
Долго не занимался программированием , но тут жена решила поучится , да и сам повторить ,так вот столкнулся с такой темой на 4pda может...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
villu
202 / 202 / 4
Регистрация: 06.08.2011
Сообщений: 600
Записей в блоге: 1
26.02.2012, 23:06     In function ‘int main()’: error: expected ‘(’ before ‘n’ #2
C++
1
switch(n)
И после case должны быть константы.
варианты
C++
1
2
3
4
case ((n> -10*n) and (n<=0)): cout<<"попало в этот предел 1\n"; break;
case ((n> 0) and (n<=5)): cout<<"попало в этот предел 2\n"; 
case ((n> 5) and (n<=10)): cout<<"попало в этот предел 3\n";  
case ((n> 10) and (n<=10*n)): cout<<"попало в этот предел 4\n"; break;
некорректны
Valentiin
1 / 1 / 1
Регистрация: 01.05.2011
Сообщений: 13
Завершенные тесты: 1
26.02.2012, 23:11  [ТС]     In function ‘int main()’: error: expected ‘(’ before ‘n’ #3
тогда можете подсказать алгоритм чтобы n попадало в один из этих диапазонов??
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
27.02.2012, 02:33     In function ‘int main()’: error: expected ‘(’ before ‘n’ #4
К тому же результат выражения в скобках после switch должен быть целым числом. А n ведь имеет тип double.

Данные условия совсем непонятны мне .
Цитата Сообщение от villu Посмотреть сообщение
((n> -10*n) and (n<=0))
Цитата Сообщение от villu Посмотреть сообщение
((n> 10) and (n<=10*n))
Зачем нужно сравнение, к примеру, ]((n> 10) and (n<=10*n). Разве может быть иначе? Здесь n в любом случае будет меньше чем 10 * n

В общем, разобраться нужно с диапазонами и решить через if else
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2012, 02:42     In function ‘int main()’: error: expected ‘(’ before ‘n’
Еще ссылки по теме:

Какая разница между int main и void main? - C++
какая разница между (int main) i (void main)?

Почему в одних случаях пишут void main(), а в других случаях int main() {return 1;} - C++
Препод мне доказывает, что void в main`е писать неправильно, а объяснить не может почему. Кто расскажет?)

Void main or Int main - C++
Как правильнее использовать void или int в main? И обязательно возвращать return 0 в конце программы?

int main() VS void main() - C++
Вот товарищ Герберт Шилдт считает, что функция main() должна вид int main() { return 0; } Т.е. в случае удачи выполнения...

От void main() к int main() - C++
Ребят, недавно начал обучаться программированию на cpp на Windows. Перешёл на Mac ( Да, знаю, что никто его не любит и не уважает здесь, но...

Call of nonfunction in function main() - C++
Здравствуйте, пытаюсь написать простейшую програму для генирации рандомных номером, но при компиляции жалуется на строчку:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Raikerian
9 / 9 / 1
Регистрация: 10.05.2011
Сообщений: 101
27.02.2012, 02:42     In function ‘int main()’: error: expected ‘(’ before ‘n’ #5
switch можно использовать только если конкретное значение (константное). Это не паскаль, здесь если Вам нужны диапазоны испольуйте стандарнтый оператор if-else
Yandex
Объявления
27.02.2012, 02:42     In function ‘int main()’: error: expected ‘(’ before ‘n’
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru