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

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

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

Дан одномерный массив - C++

27.08.2011, 14:37. Просмотров 1087. Ответов 18
Метки нет (Все метки)

Дан одномерный массив.Определить количество максимальных элементов в массиве.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.08.2011, 14:37     Дан одномерный массив
Посмотрите здесь:

Дан одномерный массив - C++
Помогите пожалуйста вот с этой программой 1.Дан одномерный массив, состоящий из N вещественных элементов. 2.Ввести массив с...

Дан одномерный массив - C++
Дан одномерный массив, состоящий из N целочисленных элементов. Найти минимальный положительный элемент Вычислить сумму...

Дан одномерный массив A1,., An - C++
Дана последовательность A1,..., An. Поменять местами: Наибольший член с членом с номером m; Наименьший член с членом с номером m1; ...

Дан одномерный массив размерностью N - C++
Дан одномерный массив размерностью N, найти количество положительных элементов массива.

Дан одномерный массив,введенный с клавиатуры - C++
Дан одномерный массив,введенный с клавиатуры. -Найти сумму неотрицательных элементов в каждой строчке. -Сформировать вектор В из...

Дан одномерный массив А, состоящий из N элементов - C++
Помогите пожалуйста написать 2 алгоритма на си++. Первый: Дан одномерный массив А, состоящий из N элементов. Перенести в начало...

Дан одномерный массив А, состоящий из N элементов. - C++
Надо срочно решить эту задачу. Помогите, пожалуйста! Дан одномерный массив А, состоящий из N элементов. Подсчитать максимальное...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silentnuke
Android Programmer
138 / 139 / 5
Регистрация: 08.12.2010
Сообщений: 421
27.08.2011, 14:41     Дан одномерный массив #2
ну и в чем проблема?
vladimmir
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 18
27.08.2011, 14:44  [ТС]     Дан одномерный массив #3
единственная проблема в том что ужасно понимаю программирование=( и неумею проги писать только начал учиться
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.08.2011, 14:48     Дан одномерный массив #4
Цитата Сообщение от vladimmir Посмотреть сообщение
единственная проблема в том что ужасно понимаю программирование=( и неумею проги писать только начал учиться
И так что вам нужно, вопрос какой-то или программа? Если программа, то как вы будете сами учиться?
vladimmir
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 18
27.08.2011, 14:50  [ТС]     Дан одномерный массив #5
я учусь по программе по примерам потом стараюсь сам написать её или что то аналогичное но несмотря на старые
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.08.2011, 14:56     Дан одномерный массив #6
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 <stdlib.h>
const int N = 10;
 
int MaxCount(int *a, int n)
{
   int i, count, max;
   count = 0;
   max = a[0];
   for (i = 0; i < n; i++)
      if (a[i] == max)
         count++;
      else if (a[i] > max)
      {
         max = a[i];
         count = 1;
      }
   return count;
}
 
int main()
{
   int a[N], i;
   for (i = 0; i < N; i++)
   {
      a[i] = rand() % 100;
      std:: cout << a[i] << " ";
   }
   std::cout << "\n" << MaxCount(a, N);
   std::cin.get();
   return 0;
}
soon
2538 / 1303 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
27.08.2011, 14:58     Дан одномерный массив #7
Цитата Сообщение от vladimmir Посмотреть сообщение
стараюсь сам написать
серьезно? Ну тогда и пришлите нам ваш код, даже если он неправильный, мы вам поможем. Но за вас писать тут никто не будет, по крайней мере бесплатно. Заказывайте на фрилансе. Там очень любят такие заказы "Напишите мне программу! Дан одномерный массив.Определить количество максимальных элементов в массиве. Любые деньги!"

Не по теме:

don't feed troll's



Добавлено через 1 минуту
Цитата Сообщение от soon Посмотреть сообщение
Но за вас писать тут никто не будет, по крайней мере бесплатно.
угу... Уже опровергли...
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.08.2011, 15:00     Дан одномерный массив #8
Цитата Сообщение от soon Посмотреть сообщение
Но за вас писать тут никто не будет, по крайней мере бесплатно.
Ну вот, глупо поступил...Хотя, лишь бы на пользу
soon
2538 / 1303 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
27.08.2011, 15:01     Дан одномерный массив #9
Цитата Сообщение от Thinker Посмотреть сообщение
Ну вот, глупо поступил...
Ну, я возможно погорячился =)
vladimmir
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 18
27.08.2011, 15:02  [ТС]     Дан одномерный массив #10
спасибо за прогу вот теперь буду разбирать её.А насчёт того что на заказ кому то писать я думаю легче нанять репетитора деньги будут и там и там идти но от репетитора пользы больше будет.Но каждый покрайней мере учился как я на готовых прогах разбирая их самостоятельно или с основ в школе
soon
27.08.2011, 15:03
  #11

Не по теме:

Таких тем - море. А люди приходят, как будто только из коляски вылезли - ни гуглом, ни поиском по форуму пользоваться не умеют.

Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.08.2011, 15:04     Дан одномерный массив #12
Цитата Сообщение от soon Посмотреть сообщение
Ну, я возможно погорячился =)
Да нет, вы правы, ваше сообщение правильное. Иногда сливают сюда задачи, а мы их решаем зачем-то, отбираем хлеб у репетиторов
soon
2538 / 1303 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
27.08.2011, 15:05     Дан одномерный массив #13
Цитата Сообщение от Thinker Посмотреть сообщение
отбираем хлеб у репетиторов
золотые слова!
Сыроежка
Заблокирован
27.08.2011, 21:13     Дан одномерный массив #14
Цитата Сообщение от Thinker Посмотреть сообщение
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 <stdlib.h>
const int N = 10;
 
int MaxCount(int *a, int n)
{
   int i, count, max;
   count = 0;
   max = a[0];
   for (i = 0; i < n; i++)
      if (a[i] == max)
         count++;
      else if (a[i] > max)
      {
         max = a[i];
         count = 1;
      }
   return count;
}
 
int main()
{
   int a[N], i;
   for (i = 0; i < N; i++)
   {
      a[i] = rand() % 100;
      std:: cout << a[i] << " ";
   }
   std::cout << "\n" << MaxCount(a, N);
   std::cin.get();
   return 0;
}
Покажу, как такой код пишут профессиональные программисты на С++.

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   <algorithm>
 
 
template <typename T>
 
class MaxCount : public std::unary_function<T, void>
{
public:
   MaxCount() : initialized( false ), count( 0 ) {}
   void operator ()( const T &x )
   {
      if ( !initialized )
      {
         initialized = true;
         max   = x;
         count = 1;
      }
      else if ( max == x )
      {
         ++count;
      }
      else if ( max < x )
      {
         max   = x;
         count = 1;
      }
   }
 
public:
   size_t count;
 
private:
   bool initialized;
   T max;
};
 
int main()
{
   const size_t N = 10;
   int a[ N ];
   
   // каким-нибудь образом заполняем массив значениями
 
   std::cout << std::for_each( a, a + N, MaxCount<int>() ).count << std::endl;
}
Так как я набирал код, как говорится, "на коленках", то может быть в нем присутствуют какие-нибудь опечатки, которые легко исправить.
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.08.2011, 22:20     Дан одномерный массив #15
Цитата Сообщение от Сыроежка Посмотреть сообщение
Покажу, как такой код пишут профессиональные программисты на С++....
Ух ты... Надо же, я не и не знал... Ничего, что задачка детская...?

Добавлено через 22 минуты
При этом добавлю, что на форуме есть люди, которые не знают С++ им надо или С, а тут все легко в С переделать. Но это так, к слову.
vladimmir
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 18
27.08.2011, 22:30  [ТС]     Дан одномерный массив #16
о перелайте мне на С =) а то я часть только переделал вот остальное пока что думаю
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
27.08.2011, 22:37     Дан одномерный массив #17
Ну что же вы это. Ладно, вот, дальше сами программы пишите

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 <stdio.h>
#include <stdlib.h>
#define N 10
 
int MaxCount(int *a, int n)
{
   int i, count, max;
   count = 0;
   max = a[0];
   for (i = 0; i < n; i++)
      if (a[i] == max)
         count++;
      else if (a[i] > max)
      {
         max = a[i];
         count = 1;
      }
   return count;
}
 
int main()
{
   int a[N], i;
   for (i = 0; i < N; i++)
   {
      a[i] = rand() % 100;
      printf("%d ", a[i]);
   }
   puts("\n");
   printf("%d\n", MaxCount(a, N));
   return 0;
}
vladimmir
0 / 0 / 0
Регистрация: 11.05.2011
Сообщений: 18
27.08.2011, 23:01  [ТС]     Дан одномерный массив #18
огромное спасибо дальше сам постораюсь программы писать
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.08.2011, 18:55     Дан одномерный массив
Еще ссылки по теме:

Дан одномерный массив . Найти минимум и максимум - C++
Дан одномерный массив . Найти минимум и максимум. Найти сумму чисел что стоят между минимумом и максимумом

Дан одномерный массив, состоящий из N целочисленных элементов - C++
10. Дан одномерный массив, состоящий из N целочисленных элементов. 10.1. Найти максимальный отрицательный элемент. 10.2. Вычислить...

Дан одномерный массив, состоящий из N вещественных элементов - C++
1. Заполнить массив случайными числами. 2. Найти минимальный элемент. выдает ошибку error C2040: a: &quot;int *&quot; отличается по уровням...

Дан одномерный массив, состоящий из N целочисленных элементов. - C++
Дан одномерный массив, состоящий из N целочисленных элементов. 1-Заполнить массив случайными числами. 2-Найти максимальный...

Дан одномерный массив,состоящий из n целых чисел. - C++
C++ Дан одномерный массив , состоящий из n целых чисел. Преобразовать массив таким образом, чтобы сначала располагались все...


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

Или воспользуйтесь поиском по форуму:
Сыроежка
Заблокирован
28.08.2011, 18:55     Дан одномерный массив #19
Цитата Сообщение от Thinker Посмотреть сообщение
Ух ты... Надо же, я не и не знал... Ничего, что задачка детская...?

Добавлено через 22 минуты
При этом добавлю, что на форуме есть люди, которые не знают С++ им надо или С, а тут все легко в С переделать. Но это так, к слову.
На самом деле все программирование состоит из "детских задачек". Возьмите, например, функции библиотеки <cstring> такие, как strlen или strchr. Разве написание таких функций не "детская задачка"?! Тем не менее именно базовые функции требуют особой тщательной реализации, так как на их основе строится весь остальной код.

У вашего решения куча проблем. Во-первых, оно написано только для массивов.. Если потребуется решить туже самую задачу для списка, то ваше решение можно смело отправлять в мусорный ящик. Также в вашем решение нельзя использовать объекты других типов, кроме целочисленных. В-третьих, более грамотно на С++ использовать оператор <, а не >, так как в большинстве реализаций различных функций, алгоритмов, контейнеров и т.д. требуется наличие оператора <, а не >.

Я согласен, что для студентов нужно отрабатывать начальные навыки работы с простыми конструкциями языка С++. Но имеет смысл здесь также демонстрировать то, как можно профессионально написать код, так как на этом форуме присутствуют не только люди с начальными сведениями по языку. Им также интересно общаться.

Это мое решение - это, фактически, продолжение такой же темы на этом форуме в другой ветке. Там было предложено естественное решение с использованием пары алгоритмов: std::max_element и std::count. Методологически это естественное решение заслуживает того, чтобы быть первым рассмотрено и использовано. Но у него есть один недостаток, который вы уже знаете, состоящий в том, что последовательность элементов будет просматриваться дважды. Я уже тогда хотел предложить этот способ, который я показал здесь. Но тем не менее я сам бы остановился на первом способе с использованием std::max_element и std::count, так как он более нагляден и самовыразителен. А мною предложенный способ я стал бы использовать лишь тогда, когда размер контейнеров ощутимо большой.
Yandex
Объявления
28.08.2011, 18:55     Дан одномерный массив
Ответ Создать тему
Опции темы

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