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

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

10.12.2011, 21:51. Просмотров 2211. Ответов 12
Метки нет (Все метки)

2)Расположить три числа А,В,С по возрастанию их значения.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2011, 21:51
Ответы с готовыми решениями:

Расположить три целых числа по возрастанию
Здравствуйте изучаю 3-й день сишку никак не могу понять что не так делаю в...

Пользователь ввел три целых числа, расположить эти числа в порядке убывания
#include<iostream.h> main() { int a,b,c,max,min,aver; cout<<"enter a ";...

Расположить числа по возрастанию
Пользователь вводит четыре числа: a, b, c, d float a, b, c, d; cin >> a >>...

Упорядочить три заданных числа по возрастанию
Помогите пожалуйста написать простенькую программку на с++, составить...

Функция располагающая три числа по возрастанию
Описать функцию SortInc3(A, B, C), меняющую содержимое переменных A, B, C...

12
Heidel
112 / 112 / 39
Регистрация: 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
ююю
1 / 1 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:15  [ТС] #3
Heidel, спасибо! а это точно правильно?
0
Heidel
112 / 112 / 39
Регистрация: 11.10.2011
Сообщений: 647
10.12.2011, 23:21 #4
ююю, для трех разных чисел программа работает правильно.
0
ююю
1 / 1 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:23  [ТС] #5
Heidel, спасибки
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
10.12.2011, 23:25 #6
Heidel, а если надо для четырех, ты Вы напишете 4! = 24 if-а ? А если 5,6,7,...,100 ? По-моему здесь лучше с массивом
1
ююю
1 / 1 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:46  [ТС] #7
go, и как с массивом будет

Добавлено через 18 минут
чуть не забыл! блок схема нужна!и описание
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
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 чисел будет столько же строчек код занимать, только одно число в нем подправить и все
0
easybudda
Модератор
Эксперт CЭксперт С++
10029 / 5953 / 1486
Регистрация: 25.07.2009
Сообщений: 11,251
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;
}
3
go
11.12.2011, 01:35
  #10

Не по теме:

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

0
alex_x_x
бжни
2455 / 1661 / 134
Регистрация: 14.05.2009
Сообщений: 7,162
11.12.2011, 01:46 #11
.....
0
ююю
1 / 1 / 0
Регистрация: 10.12.2011
Сообщений: 40
18.12.2011, 13:33  [ТС] #12
go, напиши описание программы если сможешь
0
-=ЮрА=-
11.02.2012, 12:39     Расположить три числа по возрастанию
  #13

Не по теме:

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

0
11.02.2012, 12:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2012, 12:39
Привет! Вот еще темы с ответами:

Упорядочить по возрастанию три введенных числа
Что-то у меня не получается, а почему - не могу понять. #include &quot;stdafx.h&quot;...

Даны три числа, упорядочить их по возрастанию (не используя массивы)
дано 3 числа. упорядочить их по возрастанию при этом не использовать циклы и...

Проверить, упорядочены ли три заданных вещественных числа по возрастанию / убыванию и изменить их по условию
Даны вещественные числа n, m, p. Если они упорядочены по возрастанию, заменить...


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

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

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