Примеры программ с ветвлениями - Основы программирования на языке PascalABC.NET

Перейти к контенту

Главное меню:

Примеры программ с ветвлениями

Ветвления
Задача 1. Составить программу, выбирающую большее значение из двух числовых величин.

Алгоритм. Большее значение будем сохранять в переменной max. Для сравнения чисел можно использовать как полное, так и неполное ветвление. Во втором случае сначала будем считать, что большим является первое число, а затем при необходимости заменим его на второе.
1 способ2 способ


 Program BID1;
 Var a, b, max: integer;
 Begin
  writeln ('Введите два числа: ');
  read (a, b);
  if a>b then max:=a else max:=b;
  writeln ('Большее число: ', max);
 End.
 Program BID2;
 Var a, b, max: integer;
 Begin
  writeln ('Введите два числа: ');
  read (a, b);
  max:=a;
  if a<b then max:=b;
  writeln ('Большее число: ', max);
 End.

для копирования в среду WDE PascalABC.NET

для копирования в среду WDE PascalABC.NET
Примеры выполнения программы:

                
   

Задача 2. Составить программу, выбирающую большее значение из трёх числовых величин.

Алгоритм. Задача может быть решена различными способами.
1 способ (с помощью двух последовательных ветвлений)

Program BIT1;
Var a, b, c, m: integer;
Begin
 writeln ('Введите три числа: ');
 read (a, b, c);
 if a>b then m:=a else m:=b;
 if c>m then m:=c;
 writeln ('Большее число: ', m);
End.
Текст программы в формате .txt для копирования в среду WDE PascalABC.NET
2 способ (с помощью вложенных ветвлений)

Program BIT2;
Var a, b, c, m: integer;
Begin
 writeln ('Введите три числа: ');
 read (a, b, c);
 if a>b then
     if a>c then m:=a else m:=c
 else
     if b>c then m:=b else m:=c;
 writeln ('Большее число: ', m);
End.
Текст программы в формате .txt для копирования в среду WDE PascalABC.NET
3 способ (с помощью трёх последовательных ветвлений и составных условий)

Program BIT3;
Var a, b, c, m: integer;
Begin
 writeln ('Введите три числа: ');
 read (a, b, c);
 if (a>=b) and (a>=c) then m:=a;
 if (b>=a) and (b>=c) then m:=b;
 if (c>=a) and (c>=b) then m:=c;
 writeln ('Большее число: ', m);
End.
Текст программы в формате .txt для копирования в среду WDE PascalABC.NET
Примеры выполнения программ:

          

Задача 3. Составить программу для нахождения корней данного квадратного уравнения ax2+bx+c=0.
Program KVUR1;
Var a, b, c, d, x1, x2: real;
Begin
 writeln ('Решение квадратного уравнения');
 write ('Введите коэффициенты a, b, c: ');
 readln (a, b, c);
 d := b*b-4*a*c;  //дискриминант
 if d<0 then
    writeln ('Корней нет!')
 else
    begin
    x1:=(-b+sqrt(d))/(2*a);
    x2:=(-b-sqrt(d))/(2*a);
    writeln ('x1=', x1:5:1, '  x2=', x2:5:1)
    end;
End.

Текст программы в формате .txt для копирования в среду WDE PascalABC.NET

Примеры выполнения программы:






В последнем случае корень один, но он выводится дважды. Можно усовершенствовать программу, добавив вложенное ветвление.
Program KVUR2;
Var a, b, c, d, x, x1, x2: real;
Begin
 writeln ('Решение квадратного уравнения');
 write ('Введите коэффициенты a, b, c: ');
 readln (a, b, c);
 d := b*b-4*a*c;
 if d<0 then
   writeln ('Корней нет!')
 else
   if d=0 then
     begin
     writeln ('Один корень:');
     x:=-b/(2*a); writeln ('x=', x:5:1);
     end
   else  
     begin
     writeln ('Два корня:');
     x1:=(-b+sqrt(d))/(2*a); x2:=(-b-sqrt(d))/(2*a);
     writeln ('x1=', x1:5:1, ' x2=', x2:5:1)
     end;
End.

Текст программы в формате .txt для копирования в среду WDE PascalABC.NET

Пример выполнения программы:


 
Назад к содержимому | Назад к главному меню