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

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

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

сумма 5 наибольших чисел - C++

17.02.2010, 16:33. Просмотров 548. Ответов 4
Метки нет (Все метки)

люди помагите пожалуйста я ни как не могу ввести 25 чисел с экрана в статическую память.Найти сумму 5 наибольших чисел. Вывести их и результат в текстовый файл !!!!зарание спс!!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2010, 16:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос сумма 5 наибольших чисел (C++):

Сумма двух наибольших чисел последовательности. - C++
Здравствуйте, уважаемые. Прошу Вас, помочь мне разобраться в коде программы. Или упростить алгоритм решения. Задание:Вводится...

Сумма наибольших значений столбцов матрицы - C++
Не могли бы мне подсказать как можно найти сумму наибольших значений ее столбцов?? cout<<"Введите кол-во столбцов:"; cin>>n; ...

Сумма наибольших элементов матрицы чётных строк - C++
#include <iostream> #include <math.h> using namespace std; int main() { int DSE,i,j,max,sum,m1,n2; cin>>m1>>n2; for (i=0; i<m1;...

Найти 10 наибольших чисел в массиве из 10000 чисел и записать в массив - C++
Есть массив положительных чисел (значение каждого числа не превышает 3000). Найти 10 наибольших чисел и записать в массив arr. ...

Поиск 2-х наибольших чисел - C++
Всем привет))) Вопрос вот в чём: подскажите как найти 2 наибольших числа из 10...массивами пользоваться нельзя)))) Ну первое число это...

Задача на поиск 2х наибольших чисел - C++
Попалась задачка с ныне мне не встречавшейся переменной tmp. Единственное, что я нашла в интернете, так это то, что tmp создают для...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
easybudda
Модератор
Эксперт CЭксперт С++
9625 / 5573 / 947
Регистрация: 25.07.2009
Сообщений: 10,708
17.02.2010, 17:46 #2
Со статической памятью не задалось, а так вот:
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
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
#include <functional>
#include <numeric>
#include <algorithm>
#include <vector>
 
/*
*   ввести 25 чисел.Найти сумму 5 наибольших чисел. 
*   Вывести их и результат в текстовый файл.
*/
 
int main(){
    const int ARRAY_SIZE = 25;
    const int NUMBERS_NEEDED = 5;
    std::vector<int> arr(ARRAY_SIZE);
    
    for ( int i = 0; i < ARRAY_SIZE; ++i ){
        std::cout << "ARRAY[" << i << "] = ";
        std::cin >> arr[i];
    }
    
    std::sort(arr.begin(), arr.end(), std::greater<int>());
    int sum = std::accumulate(arr.begin(), arr.begin() + NUMBERS_NEEDED, 0);
    std::ostringstream ost;
    std::copy(arr.begin(), arr.begin() + NUMBERS_NEEDED, std::ostream_iterator<int>(ost, " + "));
    ost << "0 = " << sum;
    std::cout << ost.str() << std::endl;
    std::cout << "Enter name of output file: ";
    std::string file_name;
    std::cin >> file_name;
    std::ofstream fout(file_name.c_str());
    if ( !fout.is_open() ){
        std::cerr << "Can't open " << file_name << " for output!" << std::endl;
        return 1;
    }
    fout << ost.str() << std::endl;
    if ( fout.bad() ){
        std::cerr << "Can't write to file!" << std::endl;
        return 1;
    }
    std::cout << "Done." << std::endl;
    fout.close();
    return 0;
}
Добавлено через 2 минуты
и ещё лишний плюс выводит...
1
BornLeader
50 / 46 / 1
Регистрация: 16.05.2008
Сообщений: 162
17.02.2010, 18:03 #3
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
#include <iostream>
#include <algorithm>
#include <fstream>
using namespace std;
 
void Input(int* ptr,int sz)
{
  for(int i=0;i<sz;i++)
    cin >> ptr[i];
}
void Output(ofstream& ofs, int* ptr, int sz)
{
  int nCount = 0;
  for(int i = 0;i<sz;i++)
  {
    nCount += ptr[i];
    ofs << *(ptr+i) << " ";
  }
  ofs << "\nSum  = " << nCount << endl;
}
 
int main(void)
{
  const int size= 25;
  int array[size]={0};
  Input(array,size);
  sort(array,array+size);
  ofstream ofs("output.txt");
  Output(ofs,array+size-5,5);
  ofs.close();
  return 0;
}
1
Genius Ignat
1236 / 774 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
17.02.2010, 18:17 #4
25 чисел с экрана
Это как?

Добавлено через 3 минуты
serg102030:
Лучше бы сказал сразу на каком языке делать надо.
0
easybudda
Модератор
Эксперт CЭксперт С++
9625 / 5573 / 947
Регистрация: 25.07.2009
Сообщений: 10,708
17.02.2010, 18:55 #5
Цитата Сообщение от Genius Ignat Посмотреть сообщение
Лучше бы сказал сразу на каком языке делать надо.

Не по теме:

Я так понимаю - если не указан, пиши на каком хочешь. Мне, например, гораздо важнее самому научиться, чем какого-нибудь лентяя от неуда по информатике спасти...

1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.02.2010, 18:55
Привет! Вот еще темы с ответами:

Найти сумму 2 наибольших из трех чисел - C++
1) Даны 3 целых числа. Найти сумму 2 наибольших из них. 2)дана структура данных из 5 названий цветочных растений цветок -название ...

Найти произведение двух наибольших четных чисел массива - C++
Найти произведение двух наибольших четных чисел массива

Из трёх заданных чисел найти сумму двух наибольших - C++
Данные три числа. Найти сумму двух наибольших из них.

Найти произведение двух наибольших отрицательных чисел массива - C++
Найти произведение двух наибольших отрицательных чисел массива help pls, вечно беда получается какая-то.. #include&lt;iostream&gt; using...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.02.2010, 18:55
Ответ Создать тему
Опции темы

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