Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 22.04.2012
Сообщений: 36
1

Сравнить переменные

08.05.2012, 12:51. Просмотров 3609. Ответов 9
Метки нет (Все метки)

Всем доброго времени суток, подскажите как сравнить 5 целочисленных переменных и большую из них распечатать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2012, 12:51
Ответы с готовыми решениями:

Как сравнить две переменные string
Есть две переменные типа string в одной записано string X="AB BA AS AX"; В другой string...

Сравнить переменные и сохранить максимальное значение
как сравнить переменные, а после большую куда-то сохранить, чтобы после использовать ?

Нужно сравнить две переменные типа string
Мне нужно сравнить 2 переменные типа string,нашел эту функцию,но почему то у меня выдает ошибку...

Объясните как правильно сравнить переменные типа char
Испульзую (strcmp(a.StNazn,c)==0) Не работает. Если поменять на (strcmp(a.StNazn,c)<0) ...

9
1065 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
08.05.2012, 13:14 2
Цитата Сообщение от Mari-mari Посмотреть сообщение
подскажите как сравнить 5 целочисленных переменных и большую из них распечатать?
с помощью

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
if(первое число большее)
{
    выводим первое
}
else if(второе число большее)
{
     выводим второе
}
.......................
else
{
     выводим пятое
}

Или создай массив из пяти элементов и найди в нем максимальное!
0
Форумчанин
Эксперт CЭксперт С++
8160 / 5008 / 1436
Регистрация: 29.11.2010
Сообщений: 13,458
08.05.2012, 13:17 3
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <algorithm>
#include <iterator>
 
int main()
{
    int arr[5] = {1, 0, 10, 5, 2};
    std::copy(&arr[0], &arr[5], std::ostream_iterator<int>(std::cout, " "));
    std::cout<< std::endl<< "Max = "<< *std::max_element (&arr[0], &arr[5]);
    return 0;
}
1
1065 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
08.05.2012, 13:21 4
MrGluck, ну я думаю STL не прокатит, так как задача первого курса, а там наврятли знают о существовании STL)
0
Форумчанин
Эксперт CЭксперт С++
8160 / 5008 / 1436
Регистрация: 29.11.2010
Сообщений: 13,458
08.05.2012, 13:23 5
Цитата Сообщение от Infinity3000 Посмотреть сообщение
MrGluck, ну я думаю STL не прокатит, так как задача первого курса, а там наврятли знают о существовании STL)
Зато элегантно
Да и некоторые начинают понимать, что легче прочитать 2 строки из учебника, чем разобраться в данном коде)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main()
{
    int arr[5] = {1, 0, 10, 5, 2}, max = 0;
    for (int i=0; i < 5; i++)
    {
        if (arr[i] > max) max = arr[i];
        std::cout<< arr[i]<< " ";
    }    
    std::cout<< std::endl<< "Max = "<< max;
    return 0;
}
0
бжни
2469 / 1679 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
08.05.2012, 13:44 6
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <stdlib.h>
 
#define MAX(a,b) ((a) > (b) ? (a) : (b))
 
int get_max(int max, int* begin, int* end) {
  if (begin < end) return get_max (MAX(*begin, max), begin+1, end);
  else return max;
}
 
int main() {
  int arr[] = { 1, 2, 7, 4, 5 };
  printf ("%d\n", get_max(arr[0], arr, arr + sizeof(arr)/sizeof(arr[0])));
  return EXIT_SUCCESS;
}
Добавлено через 17 минут
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
 
#define MAX(a,b) ((a) > (b) ? (a) : (b))
 
int get_max_impl(int max, int* begin, int* end) {
  if (begin != end) return get_max_impl (MAX(*begin, max), begin+1, end);
  else return max;
}
 
int get_max(int* begin, int* end) {
  return get_max_impl (*begin, begin+1, end);
}
 
int main() {
  int arr[] = { 1, 2, 7, 4, 8 };
  printf ("%d\n", get_max(arr, arr + sizeof(arr)/sizeof(arr[0])));
  return EXIT_SUCCESS;
}
0
3 / 3 / 2
Регистрация: 21.01.2011
Сообщений: 29
08.05.2012, 13:58 7
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
using namespace std;
int main()
{
int arr[5]={1,2,3,4,5};
int max=-10000;
for(int i=0;i<5;i++)
if(arr[i]>max) 
max=arr[i];
cout<<"max="<<max<<endl;
}
0
бжни
2469 / 1679 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
08.05.2012, 14:01 8
Цитата Сообщение от SK01736 Посмотреть сообщение
int max=-10000;
не очень хорошая практика - лучше инициализировать первым значением в массиве
(а если вдруг в массиве все значения будут меньше -10000?)
0
3 / 3 / 2
Регистрация: 21.01.2011
Сообщений: 29
08.05.2012, 14:05 9
Цитата Сообщение от alex_x_x Посмотреть сообщение
не очень хорошая практика - лучше инициализировать первым значением в массиве
(а если вдруг в массиве все значения будут меньше -10000?)
если это задача для 1 курса, то здесь не очень обязательно делать идеально заумный код, поэтому не вижу смысла в введении дополнительной цифры в массиве, тем более что могут заставить изменить код, что бы числа вводились с клавиатуры. Следовательно это будет сложнее реализовать и добавить еще пару строчек.

P.S. это же для начинающих, а не для прогеров выше 1 уровня.
0
Форумчанин
Эксперт CЭксперт С++
8160 / 5008 / 1436
Регистрация: 29.11.2010
Сообщений: 13,458
08.05.2012, 14:09 10
Цитата Сообщение от SK01736 Посмотреть сообщение
если это задача для 1 курса, то здесь не очень обязательно делать идеально заумный код, поэтому не вижу смысла в введении дополнительной цифры в массиве, тем более что могут заставить изменить код, что бы числа вводились с клавиатуры. Следовательно это будет сложнее реализовать и добавить еще пару строчек.

P.S. это же для начинающих, а не для прогеров выше 1 уровня.
То, что это задача для 1 курса, отнюдь не значит, что нужно подгонять значения как тебе хочется в рамках данной задачи. Можно вобще написать так:
C++
1
std::cout<< "Array: 2, 4, 1, -10, 27\nMax = 27";
или же
C++
1
2
int array[5] = {2, 4, 1, -10, 27}; 
int  max = array[4];
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.05.2012, 14:09

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

Сравнить две переменные и изменить их значения по результатам сравнения
Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной...

Определить массив, создать две переменные типа указатель и сравнить
Определить одномерный массив размерностью 10 элементов, * значение которых целого типа (заполнять...

Как сравнить 2 string овые переменные?
Я знаю, что уже есть схожая тема,(https://www.cyberforum.ru/cpp-beginners/thread1441129.html) но ни...

Создать программу обработки массивов структур используя структурные переменные и переменные типа объеденения
Создать массив структур, каждая из которых состоит из следующих елементов: факультет, курс, группа,...


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

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

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