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

Расположить три числа по возрастанию - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 21:51     Расположить три числа по возрастанию #1
2)Расположить три числа А,В,С по возрастанию их значения.
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Heidel
 Аватар для Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
10.12.2011, 22:35     Расположить три числа по возрастанию #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
#include <iostream>
 
int main ()
{
    int A, B, C;
    std::cout << "Input A\n";
    std::cin >> A;
    std::cout << "Input B\n";
    std::cin >> B;
    std::cout << "Input C\n";
    std::cin >> C;
 
    if ((A<=B) && (B<=C))
        std::cout << A << " " << B << " " << C << "\n";
    if ((A<=C) && (C<=B))
        std::cout << A << " " << C << " " << B << "\n";
    if ((C<=A) && (A<=B))
        std::cout << C << " " << A << " " << B << "\n";
    if ((C<=B) && (B<=A))
        std::cout << C << " " << B << " " << A << "\n";
    if ((B<=A) && (A<=C))
        std::cout << B << " " << A << " " << C << "\n";
    if ((B<=C) && (C<=A))
        std::cout << B << " " << C << " " << A << "\n";
    
    return 0;
}
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:15  [ТС]     Расположить три числа по возрастанию #3
Heidel, спасибо! а это точно правильно?
Heidel
 Аватар для Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
10.12.2011, 23:21     Расположить три числа по возрастанию #4
ююю, для трех разных чисел программа работает правильно.
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:23  [ТС]     Расположить три числа по возрастанию #5
Heidel, спасибки
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
10.12.2011, 23:25     Расположить три числа по возрастанию #6
Heidel, а если надо для четырех, ты Вы напишете 4! = 24 if-а ? А если 5,6,7,...,100 ? По-моему здесь лучше с массивом
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:46  [ТС]     Расположить три числа по возрастанию #7
go, и как с массивом будет

Добавлено через 18 минут
чуть не забыл! блок схема нужна!и описание
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
10.12.2011, 23:54     Расположить три числа по возрастанию #8
ююю,
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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
#define SIZE 3
 
int arr_cmp (const void *a, const void *b) { return * (int *)a - * (int *)b; }
 
int main(int argc, char* argv[])
{
    int arr[SIZE];
    int i;
 
    for ( i = 0 ; i < SIZE ; ++i)
        scanf ("%d", &arr[i]);
 
    qsort (arr, SIZE, sizeof (arr[0]), arr_cmp);
 
    printf ("\n ");
    for ( i = 0 ; i < SIZE ; ++i)
        printf ("%5d", arr[i]);
 
    getch ();
    return 0;
}
Добавлено через 1 минуту
Компактно, а главное для 100 чисел будет столько же строчек код занимать, только одно число в нем подправить и все
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
11.12.2011, 00:44     Расположить три числа по возрастанию #9
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от go Посмотреть сообщение
По-моему здесь лучше с массивом
При произвольном количестве чисел конечно лучше массив сорировать. Но с тремя можно и так к примеру:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
 
#define MIN(a, b) ( (a) > (b) ? (b) : (a) )
#define MAX(a, b) ( (a) < (b) ? (b) : (a) )
#define MIN3(a, b, c) ( MIN(MIN((a), (b)), (c)) )
#define MAX3(a, b, c) ( MAX(MAX((a), (b)), (c)) )
#define MIDDLE(a, b, c) ( (a) == MAX3((a), (b), (c)) ? MAX((b), (c)) : (a) == MIN3((a), (b), (c)) ? MIN((b), (c)) : (a) )
 
int main(void){
    int a, b, c;
    
    while ( printf("3 space separated values: ") > 0 && scanf("%d %d %d", &a, &b, &c) == 3 )
        printf("Descendant sorted:        %d %d %d\n", MAX3(a, b, c), MIDDLE(a, b, c), MIN3(a, b, c));
    
    return 0;
}
go
11.12.2011, 01:35
  #10

Не по теме:

easybudda, классно придумали среднее найти

alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
11.12.2011, 01:46     Расположить три числа по возрастанию #11
.....
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
18.12.2011, 13:33  [ТС]     Расположить три числа по возрастанию #12
go, напиши описание программы если сможешь
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2012, 12:39     Расположить три числа по возрастанию
Еще ссылки по теме:

Упорядочить по возрастанию три введенных числа C++
C++ Пользователь ввел три целых числа, расположить эти числа в порядке убывания
Расположить три целых числа по возрастанию C++

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

Или воспользуйтесь поиском по форуму:
-=ЮрА=-
11.02.2012, 12:39     Расположить три числа по возрастанию
  #13

Не по теме:

Ввод 3 чисел и последующий их вывод в порядке возрастания
Вдруг кому-то станет интересно, как это ещё можно реализовать по другому и в 1 строку...

Yandex
Объявления
11.02.2012, 12:39     Расположить три числа по возрастанию
Ответ Создать тему
Опции темы

Текущее время: 17:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru