Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
diman94x
5 / 5 / 2
Регистрация: 13.06.2009
Сообщений: 67
#1

Как можно укоротить....

16.06.2009, 16:54. Просмотров 923. Ответов 14
Метки нет (Все метки)

Как можно укоротить код?
Дан массив из 5 ячеек, потом надо ввести 5 чисел которые поместятся туда, а потом найти наибольшее из этих 5 чисел.

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>
using namespace std;
 
void main()
{
    int arr[5];
    for (int i = 0; i < 5; i++)
    {
        cout << "Vvedite " << i + 1 << " chislo: ";
        cin >> arr[i];
    }
    int bol = arr[0];
    for (int q = 0; q < 5; q++)
    {
        if (bol < arr[q])
        {
            bol = arr[q];
        }
        
    }
    cout << "Camoe 6olshoe chislo: " << bol; 
    cin.get();
    cin.get();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2009, 16:54
Ответы с готовыми решениями:

Подскажите, как можно упростить/укоротить код - мини-калькулятора?
Дорогие форумчане! Посоветуйте как можно укоротить, точнее упростить...

Как укоротить код?
У меня есть отдельный класс для логирования, он используется в других классах,...

Укоротить строку до определенной длины
Здравствуйте. Не могли бы подсказать как можно укоротить строчку до...

Укоротить более длинный контейнер
Здравствуйте, написал по заданию Липманна небольшую программку, которая сверяет...

Укоротить переменную от мусора в конце.
Добрый день. Хочу задать один вопрос. Я объявил 2 переменные. char rezstr;...

14
Monte-Cristo
2796 / 1382 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
16.06.2009, 17:04 #2
Цитата Сообщение от diman94x Посмотреть сообщение
Как можно укоротить код?
никак)в принципе можно, но я сомневаюсь, что это будет то, что вам нужно.
1
Search..
Заказ софта
340 / 185 / 21
Регистрация: 26.05.2009
Сообщений: 863
16.06.2009, 17:37 #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
#include <stdio.h>
 
int main(int argc, char * argv [])
{
    const short N = 5;
    int arr[N];
 
    for(int i = 0; i < N; i++)
    {
        printf("Arr[%d]: ", i + 1);
        scanf_s("%d", & arr[i]);
    }
 
    short max = arr[0];
 
    for(int j = 1; j < N; j++)
    {
        arr[j] > max ? max = arr[j] : NULL;
    }
 
    printf("Big number: %d\n", max);
 
    return 0;
}
0
Monte-Cristo
2796 / 1382 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
16.06.2009, 17:39 #4
Search.., а в чем собственно упрощение?
0
Search..
Заказ софта
340 / 185 / 21
Регистрация: 26.05.2009
Сообщений: 863
16.06.2009, 17:41 #5
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
Search.., а в чем собственно упрощение?

Не по теме:

Как в чем ?! Моя прога занимает 24 строки, а его - 25 :D

0
Rififi
2363 / 1056 / 104
Регистрация: 03.05.2009
Сообщений: 2,656
16.06.2009, 17:43 #6
diman94x,

Как можно укоротить код?
Дан массив из 5 ячеек, потом надо ввести 5 чисел которые поместятся туда, а потом найти наибольшее из этих 5 чисел.

short max = *std::max_element(arr, arr+N);
2
Search..
Заказ софта
340 / 185 / 21
Регистрация: 26.05.2009
Сообщений: 863
16.06.2009, 17:47 #7
Rififi: А в какой библиотеки std::max_element(); ?
0
Rififi
2363 / 1056 / 104
Регистрация: 03.05.2009
Сообщений: 2,656
16.06.2009, 17:51 #8
определение функции содержится в заголовочном файле algorithm
0
Evg
Эксперт CАвтор FAQ
19280 / 7136 / 529
Регистрация: 30.03.2009
Сообщений: 19,983
Записей в блоге: 30
16.06.2009, 18:00 #9
Упростить можно, выкинув массив вообще, и сразу же при вводе делать сравнние
0
EnzoMatrix
120 / 120 / 14
Регистрация: 14.03.2009
Сообщений: 462
16.06.2009, 19:22 #10
Цитата Сообщение от diman94x Посмотреть сообщение
Дан массив из 5 ячеек
Цитата Сообщение от Evg Посмотреть сообщение
выкинув массив вообще
немножко нестыковочка получится
0
Evg
Эксперт CАвтор FAQ
19280 / 7136 / 529
Регистрация: 30.03.2009
Сообщений: 19,983
Записей в блоге: 30
16.06.2009, 19:25 #11
Всмысле по условию обязательно их в массив засовывать? Просто зачем их засовывать, если можно этого не делать?
0
Nazz
WEB-developer
897 / 728 / 80
Регистрация: 12.03.2009
Сообщений: 2,802
Записей в блоге: 2
16.06.2009, 19:31 #12
етот код и так очень прост)))куда уже проще)))
0
CyBOSSeR
Эксперт С++
2309 / 1682 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
16.06.2009, 20:18 #13
Цитата Сообщение от Evg Посмотреть сообщение
Всмысле по условию обязательно их в массив засовывать? Просто зачем их засовывать, если можно этого не делать?
По-моему, Evg прав. И любой здравомыслящий преподаватель оценит такой способ.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <limits>
 
int main()
{
  int max = -std::numeric_limits<int>::max();
 
  for(int i = 0; i < 5; ++i){
    int num;
 
    std::cout << "Number#" << i + 1 << ": ";
    std::cin >> num;
    
    if(num > max)
      max = num;
  }
 
  std::cout << "Max number: " << max << std::endl;
  
  return 0;
}
0
diman94x
5 / 5 / 2
Регистрация: 13.06.2009
Сообщений: 67
16.06.2009, 20:37  [ТС] #14
я ж говорю что: "Дан массив...."
0
CyBOSSeR
Эксперт С++
2309 / 1682 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
16.06.2009, 20:43 #15
Цитата Сообщение от diman94x Посмотреть сообщение
я ж говорю что: "Дан массив...."
Тогда нужно использовать
Цитата Сообщение от Rififi Посмотреть сообщение
short max = *std::max_element(arr, arr+N);
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <algorithm>
 
int main()
{
  int arr[5];
  
  for(int i = 0; i < 5; ++i){
    std::cout << "Number#" << i + 1 << ": ";
    std::cin >> arr[i];
  }
 
  std::cout << "Max number: " << *std::max_element(arr, arr + 5) << std::endl;
  
  return 0;
}
1
16.06.2009, 20:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2009, 20:43

Как можно сделать что бы в консольном окне можно было вызвать контекстное меню как в win cmd?
Если вызвать cmd в windows то в нем можно вызывать контекстное меню и совершать...

Преобразовать текст: слова на четных местах переписать в обратном порядке, на нечетных - укоротить до 4-х символов
Товарищи! Нужна помощь!!! Вот задание: А)Преобразовать текст по правилу:...

Можно ли сделать так чтобы к классу можно было бы одновременно обращаться как к массиву
подскажите можно ли сделать так чтобы к классу можно было бы одновременно...


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

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

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