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

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

Войти
Регистрация
Восстановить пароль
 
Rocbis
1 / 1 / 0
Регистрация: 05.10.2013
Сообщений: 75
#1

Ошибка в ответе - C++

15.10.2013, 11:58. Просмотров 219. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
{
    int a,b,c,d,f,g,h;
    double e;
    printf("Vvedite chetyre chisla: ");
    scanf("%d%d%d%d",&a,&b,&c,&d);
    f=a+b; 
    g=b-d;
    h=c*d;
        e=(a/c);
    printf("%d %d %d %lf",f,g,h,e);
    return 0;
}
при вводе "1 1000000 1000000 100000", у "h" выводится неправильное число, а у "e" нужно вывести после запятой 6 цифр(1 последняя не выходит). Помогите плиз.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 11:58     Ошибка в ответе
Посмотрите здесь:

C++ Быстрая помощь. Пробел в ответе..
Почему в ответе inf ? C++
Почему при вводе чисел в ответе выводит #INF C++
Среднее геометрическое, в ответе всегда выдает единицу C++
C++ Как выровнять столбики в ответе?
Класс WORKER, непонятные символы в ответе C++
В ответе нули C++
C++ Перемножение двух матриц. В ответе большие отрицательные числа
C++ Как организовать повтор ввода при неправильном ответе
Программа не указывает отрицательный знак в ответе C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6227 / 3472 / 424
Регистрация: 29.11.2010
Сообщений: 9,178
15.10.2013, 12:35     Ошибка в ответе #2
А это разве на С++ а не pure C?

Сразу вижу, что в
Цитата Сообщение от Rocbis Посмотреть сообщение
e=(a/c);
результат будет int т.к. int / int = int а не double. Используйте static_cast, ну или если на С пишите, то (double)
Форматированный вывод в С++ это std::fixed << std::setprecision(6) из iomanip.
Но если пользуетесь printf, то
C
1
printf(%.6lf, e);
Добавлено через 1 минуту
А у h просто не хватает диапазона значений int

Добавлено через 3 минуты
Кстати, диапазона хватит лишь у long long int, а это уже С++11
Yandex
Объявления
15.10.2013, 12:35     Ошибка в ответе
Ответ Создать тему
Опции темы

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