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

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

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.88
Гортор
 Аватар для Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 03:08     Задачка из первой главы Дейтелов. #1
Программа вводит три целых числа с клавиатуры, печатает сумму, среднее значение, произведение, наименьшее и наибольшее из этих чисел.
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 не проходится еще.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dekio
Фрилансер
Эксперт C++
 Аватар для Dekio
5816 / 1214 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
28.01.2012, 15:10     Задачка из первой главы Дейтелов. #21
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <numeric>
#include <algorithm>
 
const int n = 3;
 
int main()
{
    int arr[n], pr = 1;
    for(int i = 0; i < n; std::cin>>arr[i], pr *= arr[i++]);
    std::cout<<"Sum = "<<std::accumulate(arr, arr+n, 0)<<std::endl;
    std::cout<<"Pr = "<<pr<<std::endl;
    std::cout<<"Min = "<<*std::min_element(arr, arr+n)<<" Max = "<<*std::max_element(arr, arr+n)<<std::endl;
    system("pause");
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Гортор
 Аватар для Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 16:00  [ТС]     Задачка из первой главы Дейтелов. #22
Цитата Сообщение от Paporotnik Посмотреть сообщение
в этом проблема, не?
в коде:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
using std::cout;
using std::endl;
 
int main()
{
    cout<<"Hello, world!"<<endl;
    return 0;
}
несколько раз вывел main? Да и в других прогах, типа сравнения чисел посредством if, которые компилировались отлично, стали наблюдаться те же проблемы...
все адреса к компиляторам указаны верно (IDE при обновлении сама нашла все что нужно)...
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
28.01.2012, 16:05     Задачка из первой главы Дейтелов. #23
Гортор, скиньте папку с вашим проектом.
Гортор
 Аватар для Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 16:10  [ТС]     Задачка из первой главы Дейтелов. #24
Вотъ...
Вложения
Тип файла: rar Home Work 1.rar (93.8 Кб, 9 просмотров)
Гортор
 Аватар для Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 16:17  [ТС]     Задачка из первой главы Дейтелов. #25
Создавал новый проект, с новым компилятором... никаких других приложений в нем не было. все равно спотыкается..
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
28.01.2012, 16:19     Задачка из первой главы Дейтелов. #26
Гортор, все cpp-файлы надо складывать в папку "Исходные файлы". По умолчанию там был создан файл main.cpp с пустой функцией main. Вы же вместо того, чтобы в этом файле писать свою программу, зачем-то создали вне папок файлы Home Work 1.cpp и Фигуры.cpp (кстати, русские имена файлов тоже нежелательны). И всё это в одном проекте. Неудивительно, что линковщик нашёл переопределение функции main, у вас в каждом файле имеется по таковой. В одном проекте может быть одна и только одна функция main. На каждую новую программу надо создавать новый проект. Все исходные файлы помещать в виртуальную папку "Исходные файлы", все хидеры - в "Файлы заголовков".
Гортор
 Аватар для Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 16:50  [ТС]     Задачка из первой главы Дейтелов. #27
silent_1991, я знал это... Спасибо что пожевали...

Добавлено через 13 минут
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
#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 << endl;
    
    product = num1 * num2 * num3;
    cout << "Product = " << product << endl;
    
    if (num1<num2&&num1<num3)
        cout << "Small = " << num1 << endl;
    if (num2<num1&&num2<num3)
        cout << "Small = " << num2 << endl;
    if (num3<num1&&num3<num2)
        cout << "Small = " << num3 << endl;
    
    if (num1>num2&&num1>num3)
        cout << "Great = " << num1 << endl;
    if (num2>num1&&num2>num3)
        cout << "Great = " << num2 << endl;
    if (num3>num1&&num3>num2)
        cout << "Great = " << num3 << endl;
    
    return 0;
}
Enter thre number:
1 3 2
Sum = 6
Average = 2
Product = 6
Small = 1
Great = 3

ВЫПОЛНИТЬ SUCCESSFUL (общее время: 3s)

Всем боьшое спасибо!!!

Добавлено через 10 минут

Не по теме:

silent_1991, как сделать, что бы IDE выводило русский шрифт при выполнении?

silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
28.01.2012, 16:53     Задачка из первой главы Дейтелов. #28
Гортор, это не от IDE зависит. Попробуйте std::setlocale(LC_ALL, "Russian"); в начале функции main вставить. А лучше пишите по-английски.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.01.2012, 16:57     Задачка из первой главы Дейтелов.
Еще ссылки по теме:

Задача 7 главы 7 из книги Р. Лафоре. Строки C++
C++ Не получается создать класс Account из книги Дейтелов
C++ Программка из 4 главы книги Страуструпа принципы и практика - не работает

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

Или воспользуйтесь поиском по форуму:
Гортор
 Аватар для Гортор
11 / 11 / 0
Регистрация: 24.10.2011
Сообщений: 134
28.01.2012, 16:57  [ТС]     Задачка из первой главы Дейтелов. #29
silent_1991, std::setlocale(LC_ALL, "Russian") не помогает... ну и фиг с ним. будет лишний повод учить язык...
П.С. темку можно закрывать..
Yandex
Объявления
28.01.2012, 16:57     Задачка из первой главы Дейтелов.
Ответ Создать тему
Опции темы

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