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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.68
ZarinZomanu4
5 / 5 / 0
Регистрация: 27.05.2013
Сообщений: 60
#1

Задача "Кто старше?" (подскажите где ошибка в коде) - C++

20.06.2014, 20:41. Просмотров 3147. Ответов 17
Метки нет (Все метки)

Здравствуйте!подскажите где может быть ошибка, на сайте показывает частичное решение,
Условие:
Программа принимает три числа: возраст Антона, возраст Бориса и возраст Виктора. Определите, кто из них старше остальных.
Входные данные
Входная строка содержит три натуральных числа: возраст Антона, возраст Бориса и возраст Виктора.
Выходные данные
Выходная строка должна содержать латинскую букву – код того человека, который старше всех. Код Антона – 'A', код Бориса – 'B', код Виктора – 'C'. Если двое старше третьего, нужно вывести два кода через пробел (в алфавитном порядке). Например, если Антон и Виктор старше Бориса, программа должна вывести 'A C'. Если все трое одного возраста, программа должна вывести число 0.
Код:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
int main ()
{
    int a ,b,c;
    cin>>a>>b>>c;
        if (a>b && b>c)
        cout<<"A"<<endl;
    if (a<b && b>c)
        cout<<"B"<<endl;
    if (a<b && b<c)
        cout<<"C"<<endl;
    if (a==b && b==c)
        cout<<"0"<<endl;
    if (a==b && b>c)
        cout<<"A,B"<<endl;
    if (a==c && b<c)
        cout<<"A,C"<<endl;
    if (b==c && a<c)
        cout<<"B,C"<<endl;
 
        return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2014, 20:41     Задача "Кто старше?" (подскажите где ошибка в коде)
Посмотрите здесь:
Где в коде ошибка(-и)? Компилируется, но выкидывает "name.exe has stopped working" C++
C++ Ошибка в коде: "использована неиницилизирована локальная переменная"
C++ Ошибка в коде "вызвано срабатывание точки останова"
Ошибка в коде: "использована неинициализированная локальная переменная" C++
C++ Синтаксическая ошибка во встроенном коде на языке ассемблера в "код операции"
[ООП] Кто фиксанет ошибку? Ошибка в "обратке исключений". КОД ЕСТЬ! C++
C++ Ошибка в коде игры "Быки и коровы"
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5254 / 4574 / 1535
Регистрация: 14.04.2014
Сообщений: 18,190
20.06.2014, 20:53     Задача "Кто старше?" (подскажите где ошибка в коде) #2
Так работает или нет? Почему без else?
Pjeroo
Землянин
34 / 34 / 12
Регистрация: 15.01.2013
Сообщений: 313
20.06.2014, 21:01     Задача "Кто старше?" (подскажите где ошибка в коде) #3
ZarinZomanu4,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int a,b,c;
    cin >> a >> b >> c;
 
    if (a > b && a > c)
        cout << 'A';
    else if (b > c && b > a)
        cout << 'B';
    else if (c > b && c > a)
        cout << 'C';
    else if (a == b && a == c)
        cout << '0';
    else if (a == b && b > c)
        cout << "A,B";
    else if (a == c && c > b)
        cout << "A,C";
    else if (b == c && c > a)
        cout << "B,C";
ZarinZomanu4
5 / 5 / 0
Регистрация: 27.05.2013
Сообщений: 60
20.06.2014, 21:04  [ТС]     Задача "Кто старше?" (подскажите где ошибка в коде) #4
как бы работает, но проверочный сайт пишет что решение частичное.

Добавлено через 2 минуты
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int a,b,c;
 cin >> a >> b >> c;
if (a > b && a > c)
 cout << 'A';
 else if (b > c && b > a)
 cout << 'B';
 else if (c > b && c > a)
 cout << 'C';
 else if (a == b && a == c)
 cout << '0';
 else if (a == b && b > c)
 cout << "A,B";
 else if (a == c && c > b)
 cout << "A,C";
 else if (b == c && c > a)
 cout << "B,C";[/quote]
не подходит.все равно частичное решение.
Sheoka
0 / 0 / 1
Регистрация: 09.04.2014
Сообщений: 5
20.06.2014, 21:07     Задача "Кто старше?" (подскажите где ошибка в коде) #5
Нет ни одной проверки, являются ли числа целыми, неотрицательными. И если ввести что-то не так, то всё летит
Pjeroo
Землянин
34 / 34 / 12
Регистрация: 15.01.2013
Сообщений: 313
20.06.2014, 21:10     Задача "Кто старше?" (подскажите где ошибка в коде) #6
Sheoka, и с чего вдруг оно куда-то полетит?
ValeryS
Модератор
6551 / 5017 / 463
Регистрация: 14.02.2011
Сообщений: 16,731
20.06.2014, 21:13     Задача "Кто старше?" (подскажите где ошибка в коде) #7
ZarinZomanu4, зачем столько проверок, бей условие на две части
примерно так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
if(a>b)
{
  
  if(a==c)
     cout<<"A C"<<endl;
  else
    {
     if(a>c)
     cout<<"A"<<endl;
     else
     cout<<"C"<<endl;
    }
   }
else
{
 if(a<b)
 {
   if(b>=c)
     cout<<"B";
   else
      cout<<"C"<<endl;
    if(b==c)
     cout<<" C"<<endl;
  else
     cout<<endl;
 } 
 else
 {
   if(a==c)
     cout<<"0"<<endl;
  else
     cout<<"B C"<<endl;
 }
}
Sheoka
0 / 0 / 1
Регистрация: 09.04.2014
Сообщений: 5
20.06.2014, 21:13     Задача "Кто старше?" (подскажите где ошибка в коде) #8
А вы попробуйте ввести что-нибудь не являющееся натуральным числом
ZarinZomanu4
5 / 5 / 0
Регистрация: 27.05.2013
Сообщений: 60
20.06.2014, 21:14  [ТС]     Задача "Кто старше?" (подскажите где ошибка в коде) #9
Цитата Сообщение от Sheoka Посмотреть сообщение
Нет ни одной проверки, являются ли числа целыми, неотрицательными. И если ввести что-то не так, то всё летит
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if (a>0 && b>0 && c>0)
        { if (a > b && a > c)
        cout << 'A';
    else if (b > c && b > a)
        cout << 'B';
    else if (c > b && c > a)
        cout << 'C';
    else if (a == b && a == c)
        cout << '0';
    else if (a == b && b > c)
        cout << "A,B";
    else if (a == c && c > b)
        cout << "A,C";
    else if (b == c && c > a)
        cout << "B,C";
}
    else 
        cout<<"error"<<endl;
Все равно не то.или я не правильно понял мысль?
SlavaSSU
215 / 160 / 45
Регистрация: 17.07.2012
Сообщений: 587
20.06.2014, 21:18     Задача "Кто старше?" (подскажите где ошибка в коде) #10
тут не нужны никакие проверки, читайте формат входных данных: 3 натуральных числа...
ZarinZomanu4
5 / 5 / 0
Регистрация: 27.05.2013
Сообщений: 60
20.06.2014, 21:19  [ТС]     Задача "Кто старше?" (подскажите где ошибка в коде) #11
Цитата Сообщение от ValeryS Посмотреть сообщение
зачем столько проверок, бей условие на две части
примерно так
Ну тоже самое.Частичное решение.
Sheoka
0 / 0 / 1
Регистрация: 09.04.2014
Сообщений: 5
20.06.2014, 21:21     Задача "Кто старше?" (подскажите где ошибка в коде) #12
Сообщение было отмечено автором темы, экспертом или модератором как ответ
"нужно вывести два кода через пробел (в алфавитном порядке)" - попробуйте убрать запятые между выводимыми буквами
ZarinZomanu4
5 / 5 / 0
Регистрация: 27.05.2013
Сообщений: 60
20.06.2014, 21:22  [ТС]     Задача "Кто старше?" (подскажите где ошибка в коде) #13
Цитата Сообщение от Sheoka Посмотреть сообщение
"нужно вывести два кода через пробел (в алфавитном порядке)" - попробуйте убрать запятые между выводимыми буквами
Добавлено через 1 минуту
нужно вывести два кода через пробел (в алфавитном порядке) - а в коде стоят запятые
Черт действительно.Помогло.Спасибо.
Pjeroo
Землянин
34 / 34 / 12
Регистрация: 15.01.2013
Сообщений: 313
20.06.2014, 21:23     Задача "Кто старше?" (подскажите где ошибка в коде) #14
Sheoka, и все нормально отработает.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2014, 21:26     Задача "Кто старше?" (подскажите где ошибка в коде)
Еще ссылки по теме:
C++ ошибка в коде "Invalid argument "
Структура "Работники". Вывести данные о работниках старше 30-ти лет без высшего образования C++
C++ В заданном двоичном коде заменить все цифры "0" на "1" и наоборот
C++ Надо написать программу (игру) "Кости". Где ошибка?
Ошибка в программе, где создается шаблон класса "стек" C++

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

Или воспользуйтесь поиском по форуму:
Sheoka
0 / 0 / 1
Регистрация: 09.04.2014
Сообщений: 5
20.06.2014, 21:26     Задача "Кто старше?" (подскажите где ошибка в коде) #15
Мой препод с вами бы не согласился
Yandex
Объявления
20.06.2014, 21:26     Задача "Кто старше?" (подскажите где ошибка в коде)
Ответ Создать тему
Опции темы

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