В программировании условные выражения могут быть описаны не только посредством "if-else" выраженний. Тернарный оператор в C - это оператор, который принимает три операнда или переменные, в отличие от других операторов, которые принимают один или два операнда. Тернарный оператор в C также известен как условный оператор. Это способ сократить простой код блока if-else.В этой статье рассмотрим простейшую программу, которая позволяет пользователю ввести числа и на основе введенных данных подсчитать и выдать результат.
Например, пользователь делает ввод 3-х целых чисел (a1 a2 a3), разделенных пробелом через стандартный интерфейс ввода и 6-ти выходных целых чисел (b1 b2 b3 b4 b5 b6), определенных по следующему алгоритму:
b1 = 6;
b2 = 5;
b3 = 9;
b4 = b1 ? a1 / b1 : a1 % b1;
b5 = b2 ? a2 / b2 : a2 % b2;
b6 = b3 ? a3 / b3 : a3 % b3;
где ( ? : ) - тернарный оператор проверки условия, / - целочисленное деление,
% - остаток от деления.
Значение результата работы программы:
Rez = (g + b6) % 2;
В данном случае для написания программы потребуется только одна библиотека языка С , необходимая для обработки входной и выходной информации:
#include <stdio.h>
В программе объявим все необходимые переменные:
//Объявление глобальных переменных
// необходимые целочисленные переменные по исходным данным
int b_1;
int b_2;
int b_3;
int g;
//целочисленные переменные для ввода пользователем
int a_1, a_2, a_3;
//перемененая для результата работы программы
int rez;
Также все вычисления мы можем вынести в отдельную функцию в программе:
void calculations(){
int b_1 = 6;
int b_2 = 5;
int b_3 = 9;
g = 6495;
//реализация алгоритма тернарных операций
int b_4 = b_1?a_1/b_1:a_1%b_1; //
int b_5 = b_2?a_2/b_2:a_2%b_2; //
int b_6 = b_3?a_3/b_3:a_3%b_3; //
// Вычисление результата
rez =(g+b_6)%2;
}
Далее опишем главную функцию main (В каждой программе на языке Си есть основная функция, которая должна иметь имя main . Функция main служит отправной точкой для выполнения программы. Обычно она управляет выполнением программы, направляя вызовы других функций в программе):
//Функция входа в программу (главная функция)
int main()
{
//вывод на экран названия работы
printf("Реализация тернарных операций");
printf("\n"); //перевод на новую строку
//Ввод данных пользователем , считывание в переменные a_1, a_2, a_3
printf("Введите переменные a1, a2, a3:");
printf("\n"); //перевод на новую строку
printf("a1 = ");
scanf("%d",&a_1);
printf("\n"); //перевод на новую строку
printf("a2 = ");
scanf("%d",&a_2);
printf("\n"); //перевод на новую строку
printf("a3 = ");
scanf("%d",&a_3);
calculations();
//вывод на экран результата работы программы
printf("результат работы программы ");
printf("R = %d", rez);
getch();
return 0;
}
После запуска такой программы пользователь увидит такое сообщение:
После ввода пользователем чисел программа вычислит результат и выведет его на экран:
#программирование #С #разработка