Система тестов. Результаты работы Pascal-программы

Тест

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

Тест

Алгоритмы линейной и разветвляющейся структуры

Пример 1.1. Простейший алгоритм, запрашивающий имя и затем приветствующий его обладателя.

Данные Результат
Имя = "Тимур" "Привет, Тимур!"

Демонстрация

Школьный АЯ

алг Знакомство (арг лит Имя, рез лит t) нач вывод "Как тебя зовут?" ввод Имя t:= "Привет, " + Имя + "!" | "+" - операция сцепки вывод t кон


Turbo Pascal

Program Hello; Var Name: String; {Описание переменной Name строкового типа} BEGIN Write('Как тебя зовут? '); {Вывод на экран текста вопроса} ReadLn(Name); {Ввод c клавиатуры имени} WriteLn('Привет, ', Name, '!'); {Вывод на экран приветствия} ReadLn END.

Здесь последний оператор ReadLn позволяет видеть на экране результаты работы программы, пока не будет нажата клавиша <Enter>.

Как тебя зовут? Тимур <Enter> Привет, Тимур!

QBasic

CLS INPUT "Как тебя зовут? ", Name$ PRINT "Привет , "; Name$; "!" END

Пример 1.2. Определить объём и площадь боковой поверхности цилиндра с заданными радиусом основания R и высотой H.

Данные Результат
R = 1 H = 1 V = 3.14 S = 6.28
       

Демонстрация

Школьный АЯ

алг Цилиндр (арг вещ R, H, рез вещ V, S)нач вещ Pi Pi:= 3.14 V:= Pi * R**2 * H S:= 2 * Pi * R * H кон


Turbo Pascal

Program Cylinder; Uses Crt; {Подключение библиотеки Crt} Var R, {радиус основания цилиндра} H, {высота цилиндра } V, {объем цилиндра } S: Real; {площадь боковой поверхности цилиндра} BEGIN ClrScr; {Вызов из библиотеки Crt процедуры очистки экрана} Write('Введите высоту цилиндра: '); ReadLn(H); Write('Введите радиус основания: '); ReadLn(R); V:= Pi * R * R * H; S:= 2 * Pi * R * H; WriteLn; WriteLn('Объем цилиндра = ', V: 5: 2); {Здесь 5 - общее количество позиций, занимаемых переменной V при выводе, а 2 - количество позиций в дробной части значения V} WriteLn('Площадь боковой поверхности = ', S: 5: 2); ReadLn END.


QBasic

CLS INPUT "Введите высоту цилиндра: ", H INPUT "Введите радиус основания: ", R V = 3.14 * R ^ 2 * H S = 2 * 3.14 * R * H: PRINT PRINT "Объем цилиндра = "; V PRINT "Площадь боковой поверхности = "; S END

Пример 1.3. Даны три точки на плоскости. Определить, какая из них ближе к началу координат.

Номер теста Данные Результат
xA yA xB yB xC yC Otvet
          -1   "Это точка A"
          -1   "Это точка B"
      -1       "Это точка C"/TR>

Демонстрация

Школьный АЯ

алг Точки(арг вещ xA,yA,xB,yB,xC,yC, рез лит Otvet)нач вещ DistA,DistB,DistC ввод xA,yA,xB,yB,xC,yC DistA:= sqrt(xA**2 + yA**2) DistB:= sqrt(xB**2 + yB**2) DistC:= sqrt(xC**2 + yC**2) если (DistA < DistB) и (DistA < DistC) то Otvet:= "Это точка А" иначе если DistB < DistC то Otvet:= "Это точка B" иначе Otvet:= "Это точка C" все все вывод Otvetкон


Turbo Pascal

Program Points; Uses Crt; Var xA, yA, xB, yB, xC, yC, DistA, DistB, DistC: Real; BEGIN ClrScr; WriteLn('Введите координаты точки А:'); Write('x = '); ReadLn(xA); Write('y = '); ReadLn(yA); WriteLn('Введите координаты точки B:'); Write('x = '); ReadLn(xB); Write('y = '); ReadLn(yB); WriteLn('Введите координаты точки C:'); Write('x = '); ReadLn(xC); Write('y = '); ReadLn(yC); DistA:= sqrt(sqr(xA) + sqr(yA)); DistB:= sqrt(sqr(xB) + sqr(yB)); DistC:= sqrt(sqr(xC) + sqr(yC)); WriteLn; Write('Ответ: '); If (DistA < DistB) and (DistA < DistC) then WriteLn('Это точка А.') else If (DistB < DistC) then WriteLn('Это точка B.') else WriteLn('Это точка C.'); ReadLnEND.

Пример 1.4. Найти произведение цифр заданного целого четырехзначного числа.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow