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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.88
Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
#1

Задачка из первой главы Дейтелов. - C++

28.01.2012, 03:08. Просмотров 2040. Ответов 28
Метки нет (Все метки)

Программа вводит три целых числа с клавиатуры, печатает сумму, среднее значение, произведение, наименьшее и наибольшее из этих чисел.
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
35
36
37
38
39
40
41
42
//Программа вводит три целых числа с клавиатуры
//печатает сумму, среднее значение, произведение
//наименьшее и наибольшее из этих чисел.
#include <iostream>
 
using std::cout;
using std::cin;
using std::endl;
 
main()
{
    int num1, num2, num3, sum, average, product,   small,   great;
    //число 1,  2,    3, сумма,среднее, умножение, меньшее, большее
    
    cout << "Enter thre number: \n";
    cin >> num1 >> num2 >> num3;
    
    sum = num1 + num2 + num3;
    cout << "Sum = " << sum << endl;
    
    average = (num1 + num2 + num3)/ 3;
    cout << "Average = " << average;
    
    product = num1 * num2 * num3;
    cout << "Product = " << product;
    
    if (num1 < num2 < num3)
        cout << "Small = " << num1 << endl;
    if (num2 < num1 < num3)
        cout << "Small = " << num2 << endl;
    if (num3 < num1 < num2)
        cout << "Small = " << num3 << endl;
    
    if (num1 > num2 > num3)
        cout << "Great = " << num1 << endl;
    if (num2 > num1 > num3)
        cout << "Great = " << num2 << endl;
    if (num3 > num1 > num2)
        cout << "Great = " << num3 << endl;
    
    return 0;
}
NetBeans 7.1 ругается следующим образом:
make[2]: *** [build/Debug/Cygwin_4.x-Windows/Home work 1.o] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2


ПОСТРОИТЬ FAILED (значение выхода 2, общее время: 2s)


Плюс немного не уверен в правильности определения наименьшего и наибольшего значений.
П.С. порыскав в архивах форума нашел несколько ответов на поводу вывода наименьшего и наибольшего значений, но тут еще даже if/else не проходится еще.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
28.01.2012, 03:37     Задачка из первой главы Дейтелов. #2
Цитата Сообщение от Гортор Посмотреть сообщение
но тут еще даже if/else не проходится еще
Харви Дейтел, Пол Дейтел - Как программировать на С++ (5-е издание), 2.7. Принятие решений: операции равенства и отношений, стр. 113.
У меня в NetBeans 7.0.1 всё компилируется. Сейчас докачается 7.1 (спасибо, что ненавязчиво сообщили об обновлении ) , проверю там.
Sadom
11 / 11 / 1
Регистрация: 06.01.2012
Сообщений: 19
28.01.2012, 03:41     Задачка из первой главы Дейтелов. #3
Плюс немного не уверен в правильности определения наименьшего и наибольшего значений.
C++
1
2
if (num1 < num2 && num1 < num3)
...
Остальное по аналогии
vetal10
35 / 35 / 5
Регистрация: 25.05.2010
Сообщений: 211
28.01.2012, 03:43     Задачка из первой главы Дейтелов. #4
в if-ах ошибка
C++
1
2
3
4
if(num1<num2&&num2<num3){
std::cout<<"great="<<num3<<std::endl;
std::cout<<"small="<<num1<<std::endl;
}
&& -логическое И
easybudda
Эксперт CЭксперт С++
9465 / 5478 / 927
Регистрация: 25.07.2009
Сообщений: 10,502
28.01.2012, 03:52     Задачка из первой главы Дейтелов. #5
Цитата Сообщение от Гортор Посмотреть сообщение
make[2]: *** [build/Debug/Cygwin_4.x-Windows/Home work 1.o] Error 1
Минуточку... CygWin - это такой эмулятор linux, под виндой работающий. Похоже, Вы не то скачали (ну если только не на самом деле нетбинс свой в винде из-под цигвин запускаете)... Хеловорд скомпилировать не пытались? А так в текст не вчитывался, но g++ откомпилировал без сучка/задоринки...
Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 03:59  [ТС]     Задачка из первой главы Дейтелов. #6
Цитата Сообщение от easybudda Посмотреть сообщение
Хеловорд скомпилировать не пытались?
да, там все впорядке было. остаьные программки типа num1+num2 тоже работали. Проверю еще раз.. (хотя как бы я запустил не .exe приложение?)

Цитата Сообщение от silent_1991 Посмотреть сообщение
Харви Дейтел, Пол Дейтел - Как программировать на С++ (5-е издание), 2.7. Принятие решений: операции равенства и отношений, стр. 113.
первая глава. Упражнение 1,26... Как так?

Сомнения были в виду того, что если num2 будет больше num3 то возможно строка
C++
1
if (num1 < num2 < num3)
будет неверна.. или нет?..
easybudda
Эксперт CЭксперт С++
9465 / 5478 / 927
Регистрация: 25.07.2009
Сообщений: 10,502
28.01.2012, 04:10     Задачка из первой главы Дейтелов. #7
Цитата Сообщение от Гортор Посмотреть сообщение
да, там все впорядке было.
Значит на этот раз при создании проекта неправильно цель указали... Там где-нибудь в настройках должно быть что-то вроде "целевая платформа", вот там вместо CygWin нужно Windows поставить.

Не по теме:

Вот говорил же - ставьте мелкостудию и голову себе не морочьте...



Цитата Сообщение от Гортор Посмотреть сообщение
if (num1 < num2 < num3)
Это действительно не верно, и работать будет не правильно, а как должно быть, Вам уже подсказали. Но компилироваться оно и так будет.

Цитата Сообщение от Гортор Посмотреть сообщение
хотя как бы я запустил не .exe приложение?
А под CygWin приложения тоже с расширением exe компилируются, оно же всё-таки не то, чтоб совсем линукс - видимость одна.
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
28.01.2012, 04:23     Задачка из первой главы Дейтелов. #8
Гортор, а у вас точно полная, а не сокращённая версия книги? Потому как у меня в первой главе вообще нет упражнений, связанных с программированием, потому как сама глава посвящена общим вопросам развития компьютеров и ЯП. Во второй же главе это упражнение у меня идёт под номером 2.19, и, как я уже сказал, до этого оператор if был рассмотрен в главе 2.

Добавлено через 1 минуту
Цитата Сообщение от Гортор Посмотреть сообщение
if (num1 < num2 < num3)
В данном случае результат выражения num1 < num2 (true или false) приводится к типу переменной num3 и сравнивается с ней.

Добавлено через 7 минут
Так, в 7.1 тоже всё прекрасно скомпилировалось. Вы, видимо, действительно скачали не mingw, а cygwin вместе с mingw. Скачайте этот mingw и укажите NetBeans'у использовать его в качестве С/С++ компилятора.

Добавлено через 3 минуты
Хотя стоп, что-то я сомневаюсь, что ошибка в этом. Покажите весь вывод make'а.
Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 04:24  [ТС]     Задачка из первой главы Дейтелов. #9
Цитата Сообщение от silent_1991 Посмотреть сообщение
Покажите весь вывод make'а.
"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Entering directory `/cygdrive/c/Users/Администратор/Documents/NetBeansProjects/Home Work 1'
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/Cygwin_4.x-Windows/home_work_1.exe
make[2]: Entering directory `/cygdrive/c/Users/Администратор/Documents/NetBeansProjects/Home Work 1'
make[2]: Leaving directory `/cygdrive/c/Users/Администратор/Documents/NetBeansProjects/Home Work 1'
nbproject/Makefile-Debug.mk:60: recipe for target `.build-conf' failed
make[1]: Leaving directory `/cygdrive/c/Users/Администратор/Documents/NetBeansProjects/Home Work 1'
nbproject/Makefile-impl.mk:39: recipe for target `.build-impl' failed
make[2]: *** No rule to make target `������.cpp', needed by `build/Debug/Cygwin_4.x-Windows/������.o'. Stop.
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2


ПОСТРОИТЬ FAILED (значение выхода 2, общее время: 1s)
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
28.01.2012, 04:25     Задачка из первой главы Дейтелов. #10
Гортор, да, попробуйте всё-таки другой компилятор.
Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 04:26  [ТС]     Задачка из первой главы Дейтелов. #11
Цитата Сообщение от silent_1991 Посмотреть сообщение
Гортор, а у вас точно полная, а не сокращённая версия книги?
1036 страниц... вырезаны только страницы с датой печати...
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
28.01.2012, 04:27     Задачка из первой главы Дейтелов. #12
Гортор, да, это урезанная версия. 1454 страницы у меня.
Гортор
28.01.2012, 04:32  [ТС]
  #13

Не по теме:

...Пошел в магазин за полной бумажной книжкой и лицензионной IDE.... Да. В пять ночи..

silent_1991
28.01.2012, 04:33
  #14

Не по теме:

Гортор, полная книжка и в интернете есть))) А NetBeans - бесплатная IDE.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.01.2012, 05:09     Задачка из первой главы Дейтелов.
Еще ссылки по теме:
Где взять решения задач из книги Дейтелов C++
C++ Не получается создать класс Account из книги Дейтелов
Задача 7 главы 7 из книги Р. Лафоре. Строки C++
C++ Задача по книге Страуструпа после главы 3.9
C++ Ошибка. Программа с Дейтелов, которая тасует и раздает карты

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

Или воспользуйтесь поиском по форуму:
Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 05:09  [ТС]     Задачка из первой главы Дейтелов. #15
Цитата Сообщение от easybudda Посмотреть сообщение
Там где-нибудь в настройках должно быть что-то вроде "целевая платформа", вот там вместо CygWin нужно Windows поставить.
Есть такое. Вот только винды в выборе платформы не наблюдается.. Переустанавливаю... :/

Добавлено через 17 минут
Та же шарманка....
Вроде нужную страничку на офф сайте нашел. Завтра бум копать..
Yandex
Объявления
28.01.2012, 05:09     Задачка из первой главы Дейтелов.
Ответ Создать тему
Опции темы

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