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

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

Войти
Регистрация
Восстановить пароль
 
 
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
#1

Узнать наибольшее, найти сумму, наименьшее, avg - C++

25.01.2014, 01:15. Просмотров 977. Ответов 26
Метки нет (Все метки)

Узнать наибольшее, найти сумму, наименьшее, avg
Тоесть нужно сделать программу в консоле на c++ что бы:

Вводишь например там хоть сколько чисел и как только введешь 0 находит:

1. наибольшее число из всех введенных
2. сумму всех чисел
3. наименьшее
4. avg

Нужна помощь срочно, помогите решить хоть одно что то
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.01.2014, 01:15     Узнать наибольшее, найти сумму, наименьшее, avg
Посмотрите здесь:

Найти наименьшее и наибольшее значение, а также сумму, разность, произведение и частное - C++
Напишите программу , предлагающую пользователю ввести два целых числа . Запишите эти значения в переменные типа int с именами val1 и val2...

Найти наибольшее и наименьшее значение - C++
Задача - Дано целое n>0 , среди чисел вида ai=i*sin(1/i), i=1,2,...,n найти наибольшее и наименьшее. Ответ каждый раз выдает один и...

Найти наибольшее и наименьшее из 3х чисел - C++
Программа должна находить большее и меньшее из трёх чисел. Для наибольшего пробовал так: int xdif; if ( y > z ) ...

Найти наименьшее и наибольшее из пяти чисел - C++
Вобщем суть такая.. Читаю книгу и теперь необходимо выполнить такое задание "Напишите программу, которая считывает пять целых чисел,...

Найти наибольшее и наименьшее значения диагоналей матрицы - C++
определить наибольший элемент на главной диагонали матрицы и самый маленький на побочные и вычислить абсолютное значение разницы между...

Найти наименьшее и наибольшее значение массива с индексами - C++
Ребят, я чайник, но на учебе задали написать программу на с++, нужно написать массив в индексами, потом вывести его, найти наименьшее и...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gromo
370 / 269 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
25.01.2014, 01:18     Узнать наибольшее, найти сумму, наименьшее, avg #2
FIN7, не могу не спросить: вы знаете, что такое avg?
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
25.01.2014, 01:37  [ТС]     Узнать наибольшее, найти сумму, наименьшее, avg #3
gromo, не) ну не важно, главное 1, 2, 3. Поможет пожалуйста мне на завтра надо!( не успел

Добавлено через 8 минут
вот вообщем находит минимальное:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
int main()
{
    int min = 100;
    int i = 0;
    while (i< 10)
    {
        int a, min;
 
        cin >> a;
        i += 1;
 
        if (a<min)
        {
            min = a;
        }
        cout << min << endl;
    }
    system("Pause void");
    return 0;
}
но у меня выдает ошибку "Error 1 error C4700: uninitialized local variable 'min' used"
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
25.01.2014, 02:07     Узнать наибольшее, найти сумму, наименьшее, avg #4
Цитата Сообщение от FIN7 Посмотреть сообщение
int min = 100;
Цитата Сообщение от FIN7 Посмотреть сообщение
int a, min;
два раза объявляете
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
25.01.2014, 02:30  [ТС]     Узнать наибольшее, найти сумму, наименьшее, avg #5
MrGluck, и как решить эту проблему?
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
25.01.2014, 02:39     Узнать наибольшее, найти сумму, наименьшее, avg #6
FIN7, очевидно какое-то объявление из них лишнее. Его и убрать

Добавлено через 59 секунд
Шепетом: лишняя переменная - локальная, объявленная внутри цикла.
Bretbas
188 / 47 / 7
Регистрация: 05.08.2013
Сообщений: 742
Завершенные тесты: 1
25.01.2014, 02:50     Узнать наибольшее, найти сумму, наименьшее, avg #7
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
43
44
45
46
#include <iostream>
#include <vector>
#include "conio.h"
using namespace std;
void main()
{
vector<int> m;
int k;
do
{
cin>>k;
m.push_back(k);
}
while(k != 0);
cout << "1-max;2-summa;3-min";
char c;
cin>>c;
switch(c)
{
case "1":
{
int max =m[0];
for(int i=1;i<m.size();i++)
{if(max<m[i]) max = m[i]; cout<<max; }
}
break;
case "2":
{
int sum=0;
for(int i=0;i<m.size();i++)
{sum=sum+m[i];cout<<sum; }
}
break;
case "3":
{
int min =m[0];
for(int i=1;i<m.size();i++)
{if(min>m[i]) min = m[i]; cout<<min; }
}
break;
default:
cout<<"error"; 
break;
}
getch();
}
gromo
370 / 269 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
25.01.2014, 03:04     Узнать наибольшее, найти сумму, наименьшее, avg #8
Цитата Сообщение от Bretbas Посмотреть сообщение
case "1":
Bretbas, сможете найти проблему в свитч? или у вас это работает?
gray_fox
What a waste!
1411 / 1140 / 55
Регистрация: 21.04.2012
Сообщений: 2,362
Завершенные тесты: 3
25.01.2014, 03:32     Узнать наибольшее, найти сумму, наименьшее, avg #9
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
#include <iostream>
#include <algorithm>
#include <vector>
 
 
int main() {
   std::vector<int> sequence;
 
   for (int value; (std::cin >> value) && (value != 0); ) {
      sequence.push_back(value);
   }
 
   auto const min = *std::min_element(std::begin(sequence), std::end(sequence));
   std::cout << "min = " << min << std::endl;
 
   auto const max = *std::min_element(std::begin(sequence), std::end(sequence));
   std::cout << "max = " << max << std::endl;
 
   auto const sum = std::accumulate(std::begin(sequnce), std::end(sequence), 0);
   std::cout << "sum = " << sum << std::endl;
 
   auto const avg = static_cast<double>(sum) / sequence.size();
   std::cout << "avg = " << avg << std::endl;
}
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
25.01.2014, 05:05     Узнать наибольшее, найти сумму, наименьшее, avg #10
Просто так, что-то захотелось освежить память про массив указателей на функции:
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
#include <iostream>
 
int max(int x1, int x2)
{
    return x1 < x2 ? x2 : x1;
}
 
int sum(int x1, int x2)
{
    return x1 + x2;
}
 
int min(int x1, int x2)
{
    return x1 < x2 ? x1 : x2;
}
 
int main()
{
    int (*pFunc[])(int, int) = {max, sum, min};
 
    int x, y;
    std::cout << "Enter variables: ";
    std::cin >> x >> y;
    std::cout << "What would you like ?\n"
                 "1. Max\n"
                 "2. Sum\n"
                 "3. Min\n"
                 "Your choise: ";
    unsigned int choice;
    std::cin >> choice;
    
    if (1 <= choice && choice <= sizeof(pFunc) / sizeof(*pFunc))
        std::cout << (*pFunc[choice-1])(x, y);
}
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
25.01.2014, 10:01  [ТС]     Узнать наибольшее, найти сумму, наименьшее, avg #11
MrGluck, что то не выходит

Добавлено через 14 минут
gray_fox, ошибки accumulate и avg там ошибки

Добавлено через 14 минут
Bretbas, не выходит error выдает всегда
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
25.01.2014, 10:59     Узнать наибольшее, найти сумму, наименьшее, avg #12
Цитата Сообщение от FIN7 Посмотреть сообщение
MrGluck, что то не выходит
"что то" - весьма размытое понятие. Мало ли, проблемы у вас с желудком (желаю, чтобы все-таки не было) и код мой тут вообще не при чем.

У меня пример - лишь подсказка к вычислению (если вдруг интересно станет). Сам я решал через STL, но оно как то пресно, да и один в один как у gray_fox, разве что без auto и алгоритмом minmax_element вместо двух. Вот, решил намекнуть, что входные данные дескать у трех функций одинаковые и возвращающее значенье схоже. Да и память свою размять насчет указателей на функции захотел.
Коль вам нужен лишь код чтоб Ctrl + C, Ctrl + V и в отчет, то можете смело мои посты не читать, я вообще много вредного могу насоветовать. Учебники например читать, пары не пропускать, маны всякие..

Добавлено через 54 секунды
Если пишите про ошибку - укажите то, что вам компилятор выдает, номер строки. Или можете ждать экстрасенсов с отпуска.
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
25.01.2014, 16:37  [ТС]     Узнать наибольшее, найти сумму, наименьшее, avg #13
MrGluck, вот мой код:
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
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <vector>
#include "conio.h"
using namespace std;
 
void main()
{
    vector<int> m;
    int k;
    do
    {
        cin >> k;
        m.push_back(k);
    } while (k != 0);
    cout << "1-max;2-summa;3-min\n";
    char c;
    cin >> c;
    switch (c)
    {
    case 1:
    {
              int max = m[0];
              for (int i = 1; i < m.size(); i++)
              {
                  if (max < m[i]) max = m[i]; cout << max;
              }
    }
        break;
    case 2:
    {
              int sum = 0;
              for (int i = 0; i < m.size(); i++)
              {
                  sum = sum + m[i]; cout << sum;
              }
    }
        break;
    case 3:
    {
              int min = m[0];
              for (int i = 1; i<m.size(); i++)
              {
                  if (min>m[i]) min = m[i]; cout << min;
              }
    }
        break;
        default:
        cout << "error";
        break;
    }
    cin.get(); cin.get();
 
}
но там всегда выдает просто как выбираешь 1, 2, 3 тоесть сумма меньшее или большее то выдает ошибку error, как исправить что бы считало?
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
25.01.2014, 16:40     Узнать наибольшее, найти сумму, наименьшее, avg #14
вы считываете в символ, а проверяете его как число
Bretbas
188 / 47 / 7
Регистрация: 05.08.2013
Сообщений: 742
Завершенные тесты: 1
26.01.2014, 01:14     Узнать наибольшее, найти сумму, наименьшее, avg #15
Мне понравилось высказывание "вот мой код"))
Исправьте в "в вашем коде" место
C++
1
char c;
на
C++
1
int c;
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
26.01.2014, 13:52  [ТС]     Узнать наибольшее, найти сумму, наименьшее, avg #16
Bretbas, я понял)
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
28.01.2014, 22:48  [ТС]     Узнать наибольшее, найти сумму, наименьшее, avg #17
Посмотрите я сделал скриншот, там я ввожу числа и как 0 ввожу выбираю что делать, нажимаю найти наибольшее оно показывает совсем не то, оно как то странно работает, как это исправить?
Миниатюры
Узнать наибольшее, найти сумму, наименьшее, avg  
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
29.01.2014, 00:45     Узнать наибольшее, найти сумму, наименьшее, avg #18
FIN7, Выводить максимальное значение нужно не в цикле
FIN7
2 / 2 / 0
Регистрация: 09.02.2013
Сообщений: 174
29.01.2014, 15:43  [ТС]     Узнать наибольшее, найти сумму, наименьшее, avg #19
cooller_94, а как?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2014, 16:20     Узнать наибольшее, найти сумму, наименьшее, avg
Еще ссылки по теме:

Найти наибольшее и наименьшее значение массива из восьми элементов - C++
Найти наибольшее и наименьшее значение массива из восьми элементов по 2 байта каждый. В регистре АХ должен содержаться наибольший элемент,...

В квадратной матрице найти наименьшее и наибольшее значение по условию - C++
дано квадратную матрицу, в которой необходимо определить наименьшее значение среди элементов, расположенных под главной диагональю и...

Vector - найти наименьшее и наибольшее расстояния между городами - C++
// 35_Расстояние.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include...

Найти наибольшее и наименьшее абсолютное значение вещественного массива - C++
Найти наибольшее и наименьшее абсолютное значение вещественного массива. Если таких значений несколько, определить их количество....


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

Или воспользуйтесь поиском по форуму:
Тамика
Котовчанин
870 / 450 / 142
Регистрация: 16.02.2010
Сообщений: 2,899
Записей в блоге: 27
29.01.2014, 16:20     Узнать наибольшее, найти сумму, наименьшее, avg #20
Наверное после завершения цикла.
Yandex
Объявления
29.01.2014, 16:20     Узнать наибольшее, найти сумму, наименьшее, avg
Ответ Создать тему
Опции темы

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