Лабораторная работа по Си операторы условия

Цель работы - изучение операторов условия и приобретение навыков программирования разветвляющихся алгоритмов.

Лабораторное задание

Составить программу, осуществляющую ввод исходных данных, необходимые вычисления и вывод результатов.
С клавиатуры вводятся 4 целых числа a, b, c, d. Найти среди них пару чисел с минимальной по модулю разностью. Операторы цикла в программе не использовать.


Описание метода решения задачи

1.Описание 4 целых чисел
2.Ввод 4 целых чисел
3.Нахождение модулей разностей между числами
4.Нахождение минимальной разности при помощи оператора if
5.Вывод минимальной разности и двух чисел

Листинг

#include <stdafx.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <locale>
void main()
{
     int a,b,c,d,k,k1,k2,k3,k4,k5,f,x1,x2;
     setlocale(LC_ALL, "Russian");
     printf("Ввод чисел: \n");
     scanf("%d%d%d%d",&a,&b,&c,&d); //Ввод 4 целых чисел a, b, c, d
     k=abs(a-b);
     k1=abs(a-c);k2=abs(a-d);
     k3=abs(b-c);k4=abs(b-d);
     k5=abs(c-d);
     f=k;
     x1=a;
     x2=b;
     if (f>k1) {f=k1; x1=a; x2=c;};
     if (f>k2) {f=k2; x1=a; x2=d;};
     if (f>k3) {f=k3; x1=b; x2=c;};
     if (f>k4) {f=k4; x1=b; x2=d;};
     if (f>k5) {f=k5; x1=c; x2=d;};
printf("Разность между числами %d и %d минимальна и равна %d", x1,x2,f); //Вывод пары чисел с минимальной по модулю разностью
     getch();

}

Пояснительный текст к программе

Переменные a, b, c, d-целые числа
Переменные k1,k2,k3,k4, k5-модули разностей между целыми числами
Переменная f-минимальная разность

Переменные x1,x2-Целые числа, с минимальной по модулю разностью.

Схема программы

Результаты работы программы


Комментариев нет:

Отправить комментарий