Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
ebosha
0 / 0 / 0
Регистрация: 29.11.2009
Сообщений: 4
1

Условный оператор if, туплю в коде.

23.12.2009, 20:50. Просмотров 1290. Ответов 12
Метки нет (Все метки)

Определите синтаксис условного оператора if языка С, в котором условия задаются с помощью отношений,а в качестве операторов, выполняемых в зависимости от значений условий, можно истольковать только операторы присваивания.
Что-то не могу понять где туплюсь. Помогите пожалуйста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
void main (void)
{
int a,b,x,y;
printf("\n Введите переменные a,b,x,y:");
scanf("%d%d%d", &a,&b,&x);
if(x>0)
{
y=(a+b)*x;
}
else if (x=0)
{
y=a+b;
}
else if {y=( a-b )/x};
printf("\n Результат y=%d,"y;)
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2009, 20:50
Ответы с готовыми решениями:

Условный оператор if
{float x,y,a,b,z; int n; x=StrToFloat(Edit1-&gt;Text); if (x&lt;a)...

Условный оператор
Здравствуйте! Помогите найти ошибку в коде. Результат неправильный, всегда...

winapi условный оператор
есть фрагмент программы: char c; TCHAR t; int h; static HWND e; //e-edit...

Условный оператор: группа If
3. Треугольник задан длинами своих сторон: а, b, с. Определить, является ли он...

Условный оператор IF, есть ошибки
Решила задачу, условие следующее: План выпуска сливочного масла составляет 2.7...

12
TGrey[WoLf]
41 / 41 / 4
Регистрация: 14.09.2008
Сообщений: 683
23.12.2009, 20:59 2
Нужно писать ==, а не =
if( x == 2 )
Иначе оно выполнит присвоение просто
0
kazak
3058 / 2379 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
24.12.2009, 01:40 3
И после последнего else, if лишний.
0
ebosha
0 / 0 / 0
Регистрация: 29.11.2009
Сообщений: 4
24.12.2009, 20:04  [ТС] 4
пасибо. >_< но все равно ошибка.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
void main (void)
{
int a,b,x,y;
printf("\n Введите переменные a,b,x,y:");
scanf("%d%d%d", &a,&b,&x);
if(x>0)
{
y=(a+b)*x;
}
else if (x==0)
{
y=a+b;
}
else {y=( a-b )/x};
printf("\n Результат y=%d,"y;)
}
0
Darky
Быдлокодер
508 / 295 / 84
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
24.12.2009, 20:09 5
kazak, Посмотрите, что Вы с кодом сделали? (Вверху)

ebosha,
Вот пробуйте:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
int main ()
{
  int a,b,x,y;  
  printf("\n Введите переменные a,b,x,y:");
  scanf("%d%d%d", &a,&b,&x);
  if (x>0)
  y=(a+b)*x;
  else if (x=0)
    y=a+b; 
 
if {y=( a-b )/x};
printf("\n Результат y=%d,"y;)
}
а void main(void) - Это глупость полная
0
dyonis
9 / 9 / 0
Регистрация: 07.10.2009
Сообщений: 49
24.12.2009, 20:13 6
в 12-той точка с запятой лишняя,
printf("\n Результат y=%d",y); - запятая и точка с запятой не там стояли

и вообще: какие ошибки компилятор выдает читать пробовал?
0
ebosha
0 / 0 / 0
Регистрация: 29.11.2009
Сообщений: 4
24.12.2009, 20:42  [ТС] 7
Проверял в кодпаде(онлайн компилятор, что тема есть на форуме). И вот что получилось
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
int main ()
{
  int a,b,x,y;  
  printf("\n Введите переменные a,b,x,y:");
  scanf("%d%d%d", &a,&b,&x);
  if (x>0)
  y=(a+b)*x;
  else if (x=0)
    y=a+b; 
 
if {y=( a-b )/x;}
printf("\n Результат y=%d",y);
}
А выдает ошибку :
Line 12: error: expected '(' before '{' token.... Но я не могу понять где "до" ставить скобку.
0
dyonis
9 / 9 / 0
Регистрация: 07.10.2009
Сообщений: 49
24.12.2009, 20:49 8
Цитата Сообщение от ebosha Посмотреть сообщение
А выдает ошибку :
Line 12: error: expected '(' before '{' token.... Но я не могу понять где "до" ставить скобку.
Он пишет: НЕОЖИДАННЫЙ СИМВОЛ ПЕРЕД "{" тобиш точка с запятой! Я же говорил уже.
0
AnonymC
1179 / 462 / 86
Регистрация: 23.06.2009
Сообщений: 6,375
Завершенные тесты: 1
24.12.2009, 20:52 9
C++
1
if {y=( a-b )/x;}
что за извращение?
C++
1
if(y=(a-b)/x)
Добавлено через 3 минуты
C++
1
  int a,b,x,y;
инициализовать не хочешь?
0
dyonis
9 / 9 / 0
Регистрация: 07.10.2009
Сообщений: 49
24.12.2009, 20:53 10
А, не, обшибся!

во 1-х не "=", а "=="
а во вторых скобки не фигурные, а круглые должны быть

Вот так: if (y==(( a-b )/x)
printf("\n Результат y=%d",y);
0
AnonymC
1179 / 462 / 86
Регистрация: 23.06.2009
Сообщений: 6,375
Завершенные тесты: 1
24.12.2009, 21:01 11
ebosha, символ "=" означает присвоение!в условии
C++
1
if(y=10)
означает,если присвоение не ложно,то....
символ "==" означает если равно
C++
1
if(y==10)
если игрек равно дести то
0
kazak
3058 / 2379 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
25.12.2009, 00:21 12
Все в принципе нормально, только местами точка с запятой то раньше чем нужно стояла, то позже.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h> 
void main () 
{ 
   int a,b,x,y; 
   printf("\n Введите переменные a,b,x: "); 
   scanf("%d%d%d", &a,&b,&x); 
   if (x>0)
      y=(a+b)*x;
   else if (x==0) 
      y=a+b; 
   else 
      y=( a-b )/x; 
   printf("\n Результат y=%d \n", y);
}
0
AnonymC
1179 / 462 / 86
Регистрация: 23.06.2009
Сообщений: 6,375
Завершенные тесты: 1
25.12.2009, 16:34 13
kazak, ингда вместо ( и ) стояли { }
0
25.12.2009, 16:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2009, 16:34

Перемещение окна клавишами, подскажите где я туплю?
Стоит задача: Написать приложение, обладающее следующей функциональностью: -...

Условный оператор, оператор ввода/вывода; плоскость и принадлежность точки
Здравствуйте. В С++ я абсолютный новичок, поэтому с первым же заданием возникли...

Условный оператор
Добрый день,нужна помощь в написании кода по заданию. Составить систему...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

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