Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
1

Подскажите ,как осуществить поиск максимального элемента массива

10.11.2013, 02:38. Просмотров 1395. Ответов 40
Метки нет (Все метки)

Как считать информацию с файла?
что тут не так?
Что надо писать в текстовом документе?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <conio.h>
#include <fstream>
 
using namespace std;
 
int main()
{
 
 float a,b,c;
 
 ifstream fin("z1.txt");
  c=a+b;
 
 cout<<"с="<<c;
 fin>>c;
 
  fin.close();
 
 
  cout<<endl<<"Press any key to finish...";
  getch();
  return 0;
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2013, 02:38
Ответы с готовыми решениями:

Осуществить поиск индекса максимального элемента
Нужно найти индекс макс. эл-та. Ошибку я нашел, а вот как ее исправить - не знаю. #include...

Дан массив размера N. Осуществить циклический сдвиг элементов массива вправо на k позиций, где k- индекс максимального элемента.
Дан массив размера N. Осуществить циклический сдвиг элементов массива вправо на k позиций, где k-...

Дан массив размера N. Осуществить циклический сдвиг элементов массива вправо на k позиций, где k – индекс максимального элемента
Помогите пожалуйста решить эту задачу, Дан массив размера N. Осуществить циклический сдвиг...

Поиск максимального элемента массива
Всем вечер добрый Вот моя ситуация: дано два одномерных массива А и Б допустим как мне найти ...

Поиск максимального элемента массива
Задание из ОГЭ , требуется написать, какое число выведет программа. Почему выводит 41 а не 20, ведь...

40
rangerx
1955 / 1564 / 478
Регистрация: 31.05.2009
Сообщений: 2,913
10.11.2013, 02:53 2
Цитата Сообщение от Katya99 Посмотреть сообщение
while (i,n)
{
if (a[i],min)
min=a[i];
i++;
}
C++
1
2
3
4
5
6
while(i < n)
{
  if(a[i] < min)
    min = a[i];
  ++i;
}
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
10.11.2013, 03:00  [ТС] 3
Cпасибо.а что тут не так.?
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
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
 const int n=5;
 float a[n];
 float max;
 int i;
 
 cout<<"Array a ["<<n<<"]:"<<endl;
 i=0;
 while (i<n)
 {
     cout<<"a["<<i<<"]=";
     cin>>a[i];
     i++;
 }
  max=a[0];
  i=1;
  while(i < n)
{
  if(a[i] < max)
  max = a[i];
  i++;
}
  cout<<"max="<<max;
 
  cout<<endl<<"Press any key to finish...";
  getch();
  return 0;
}
0
metallix
10 / 10 / 5
Регистрация: 07.09.2013
Сообщений: 48
10.11.2013, 03:05 4
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
#include <iostream>
#include <cstdlib>
 
using namespace std;
 
int main()
{
const int arr_size = 5;
int sArr[arr_size];
int aMax = 0;
cout <<"Vvedite " <<arr_size<<" elementov massiva: "<<endl; 
        for (int i=0; i<arr_size;i++)
        {   cout<<"sArr["<<i<<"] - "; cin >>sArr[i];
                
        }
 
for (int i=0;i<arr_size;++i)
    {
        if(sArr[i]>aMax)
        {   
            aMax=sArr[i];
        }
        
    }
    cout <<"Maksimaljnoe chislo v massive = "<<aMax;
 
system("pause>>nul");
return 0;
 
}
0
10.11.2013, 03:05
Vladislav_
4 / 4 / 1
Регистрация: 25.06.2013
Сообщений: 9
10.11.2013, 03:08 5
Цитата Сообщение от Katya99 Посмотреть сообщение
max=a[0];
i=1;
while(i < n)
{
if(a[i] < max)
max = a[i];
i++;
}
это же поиск минимального элемента! так как в ифе сравнение: если текущий э-нт меньше "максимального" то "макс" присваивается меньшее значение...
тут просто нужно поменять if(a[i] < max) на if(a[i] > max)
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
10.11.2013, 03:12  [ТС] 6
Всё )))Разобралась )))Спасибо Вам
0
VladislavTepes
78 / 78 / 14
Регистрация: 27.06.2012
Сообщений: 555
Записей в блоге: 1
16.11.2013, 13:49 7
Katya99, а в чем проблема и в чем состоит сама задача?
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
16.11.2013, 13:51  [ТС] 8
на экран просто выводится +=.а мне нужно найти сумму двух чисел,но чтобы это было через текстовый файл.
Как это сделать?
0
VladislavTepes
78 / 78 / 14
Регистрация: 27.06.2012
Сообщений: 555
Записей в блоге: 1
16.11.2013, 13:56 9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <fstream>
 
 using namespace std;
 
 int main()
 {
     std::ifstream reader("mytxt.txt");
     float a, b ,c;
     if (reader.good())
     {
         reader>>a>>b;
         c = a + b;
         std::cout<<"Сумма="<<c<<std::endl;
     }
     else std::cout<<"Some error occured"<<std::endl;
     reader.close();
     return 0;
 }
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
16.11.2013, 14:01  [ТС] 10
а что писать в текстовом файле?
0
VladislavTepes
78 / 78 / 14
Регистрация: 27.06.2012
Сообщений: 555
Записей в блоге: 1
16.11.2013, 14:02 11
Katya99, что-то вроде
Код
1 2
Вывод:
Код
Сумма=3
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
16.11.2013, 14:10  [ТС] 12
я вообще не понимаю ничего.мы почему-то не так пишем.
0
VladislavTepes
78 / 78 / 14
Регистрация: 27.06.2012
Сообщений: 555
Записей в блоге: 1
16.11.2013, 14:17 13
Katya99, спрашивайте, что вас интересует. Прямо построчно.
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
16.11.2013, 14:19  [ТС] 14
мне нужно чтобы на экран вывелась сумма из 2ух чисел,которые должны быть в текстовом файле.как это сделать?
0
VladislavTepes
78 / 78 / 14
Регистрация: 27.06.2012
Сообщений: 555
Записей в блоге: 1
16.11.2013, 14:23 15
Katya99, я же дал вам код, не?
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
16.11.2013, 14:26  [ТС] 16
нет.это не подходит
0
VladislavTepes
78 / 78 / 14
Регистрация: 27.06.2012
Сообщений: 555
Записей в блоге: 1
16.11.2013, 14:29 17
Katya99, почему? Тот код, что привели вы, написан вообще не очень-то правильно и не работает. Вы пробовали мой?
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
16.11.2013, 14:30  [ТС] 18
мы не так пишем.как мне записать эти два числа?мне нужно ,например 10 и 5.и чтобы на экран вывелось с=15

Добавлено через 1 минуту
я не могу использовать такой код так как мы делаем через ifstream fin
0
VladislavTepes
78 / 78 / 14
Регистрация: 27.06.2012
Сообщений: 555
Записей в блоге: 1
16.11.2013, 14:35 19
Пишете в файле mytxt.txt два числа через пробел (например "10 5") и запускаете данный мною код. Все работает.
P.S. а в чем вы все это пишете? Судя по conio.h, это что-то из старых компиляторов. Выкиньте его и используйте более современные компиляторы.

Добавлено через 1 минуту
Вот вам через fstream:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <fstream>
 
 using namespace std;
 
 int main()
 {
     std::fstream fin("mytxt.txt", ios::in);
     float a, b ,c;
     if (fin.good())
     {
         fin>>a>>b;
         c = a + b;
         std::cout<<"Сумма="<<c<<std::endl;
     }
     else std::cout<<"Some error occured"<<std::endl;
     fin.close();
     return 0;
 }
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
16.11.2013, 14:38  [ТС] 20
Извините,но школьная программа не позволяет мне это выкинуть
0
16.11.2013, 14:38
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2013, 14:38

Поиск максимального элемента массива и его индекса
Генератор случайных чисел от 15 до 30 целое число А создайте массив и выведите на экран. Найдите...

Поиск максимального элемента одномерного массива (рекурсией)
С помощью рекурсивной функции осуществить поиск максимального элемента одномерного массива ...

Поиск и замена максимального элемента двумерного массива
Добрый день, надо написать динамический массив который находит максимальный элемент и меняет его с...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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