Лекция: Примеры программирования простых задач.

Пример 4.1. Вычислить объем шара V с радиусом R по формуле

V = ( 4 / 3 ) π R3.

Программа этой задачи была приведена в параграфе 1.3 при за­данном конкретном значении радиуса R=0,2. Составим программу так, чтобы можно было вычислять объем шара при любом другом значении радиуса. Для этого воспользуемся не оператором присваи­вания R:= 0,2, а оператором ввода READ(R), который позволяет вво­дить любые значения R во время выполнения программы. Вспомним при этом, что значения R и V не должны выходить за предел 10+38.

Программа 4.1 вычисления объема шара вместе с информацией на экране дисплея во время ее выполнения имеет вид:

(*ВЫЧИСЛЕНИЕ ОБ’’ЕМА ШАРА*)

PROGRAM E10;

CONST PI=3.14;

VAR

R: REAL; (*радиус шара*)

V: REAL; (*объем шара*)

BEGIN

WRITELN(’ВВЕДИТЕ ЗНАЧЕНИЕ РАДИУСА R: ’);

READ(R);

V:=4/3*PI*R*R*R;

WRITELN;

WRITELN('РЕЗУЛЬТАТ: ' ) ;

WRITELNC ('ОБ«ЕМ ШАРА= ', V:8:3);

END.

 

ВВЕДИТЕ ЗНАЧЕНИЕ РАДИУСА R:

0.2

 

РЕЗУЛЬТАТ:

ОБ’’М ШАРА = 0.033

 

ВВЕДИТЕ ЗНАЧЕНИЕ РАДИУСА R:

3.5

 

РЕЗУЛЬТАТ:

ОБ’’ЕМ ШАРА = 179.503

 

Здесь результаты представлены для двух значений R: 0,2 и 3,5.

Для этой задачи, а также и для всех последующих задач после программы на языке ПАСКАЛЬ будет представлена информация на экране дисплея во время выполнения программы, а именно: ввод дан­ных и вывод результатов с поясняющим текстом. Для наглядности эта информация заключена в рамку. Естественно, что при вводе данных задаются конкретные значения, при которых полученные результаты выводятся на экран дисплея. Необходимые пояснения даны в виде комментариев.

Пример 4.2.Вычислить площадь трапеции, представленной на рис. 4.1.

 

Обозначим площадь трапеции через S. По определению, S= EF*H, где EF — средняя линия, равная полусумме оснований трапеции; Н — высота.

EF = (BC+AD) / 2.

Составим программу 4.2, объединив обе формулы в одну:

S = (BC + AD) H / 2.

Программа 4.2

(*ВЫЧИСЛЕНИЕ ПЛОЩАДИ ТРАПЕЦИИ*)

РRОGRАМ Е12;

VAR

ВС: REAL; (* ДЛИНА ВЕРХНЕГО ОСНОВАНИЯ *)

AD: REAL; (* ДЛИНА НИЖНЕГО ОСНОВАНИЯ *)

Н: REAL; (* ВЫСОТА ТРАПЕЦИИ *)

S: REAL; (* ПЛОШАДЬ ТРАПЕЦИИ *)
BEGIN

WRITELN ('ВВЕДИТЕ ЗНАЧЕНИЯ BC, AD, H:');

READ(BC,AD,H);

S:=(BC+AD)*H/2;

WRITELN;

WRITE('ПЛОЩАДЬ ТРАПЕЦИИ=',S:7:2)

END.

 

Рис. 4.1.

 

Пример 4.3. Вычислить сопротивление цепи, состоящей из резисторов, соединенных:

последовательно R посл = R1 + R2

параллельно R парал = R1 R2 / R1+ R2

Обозначим R1 через R1; R2 через R2, R посл через PROS; Rпарал, через RPAR. Составим программу 4.3 вычисления сопротивления цепи.

 

Программа 4.3.

(*ВЫЧИСЛЕНИЕ СОПРАВТИВЛЕНИЯ ЦЕПИ*);

PROGRAM ER;

VAR

R1,R2:REAL; (* СОПРОТИВЛЕНИЯ РЕЗИСТОРОВ *)

RPOS:REAL; (* СОПР-Е ПОСЛЕД.РЕЗИСТ-ОВ *)

RPAR:REAL; (* С/ОПР-Е ПАРАЛ Л. РЕ ЗИСТОРОВ *)

BEGIN

WRITEL (‘ВВЕДИТЕ ЗНАЧЕНИЯ R1 И R2 :');

READ(R1, R2);

RPOS:= R1 + R2;

RPAR:= R1*R2 /( R1+ R2 );

WRITELN;

WRITELN('ПОСЛЕДОВАТЕЛЬНАЯ ЦЕПЬ, R=', RPOS:8:2 );

WRITELN('ПАРАЛЛЕЛЬНАЯ ЦЕПЬ, R=', RPAR:8:2 )

END.

Пример 4.4. Вычислить арифметические выражения Y = √A; R=sin (X+π/4) и остаток от деления целого К на целое N.

Даны значения действительного типа A, X.

Обозначим π через PI, остаток от деления К на N — через ОСТА­ТОК. Составим программу 4.4 вычисления арифметических выражений.

 

Программа 4.4.

(*АРИФМЕТИЧЕСКИЕ ВЫРАЖЕНИЯ*)

 

PROGRAM EX;

CONST PI = 3.14;

VAR Y,R,X: REAL;

K, N: INTEGER;

OCTATOK: INTEGER;

ВЕGIN

WRITELN(‘ ДОБРЫЙ ДЕНЬ! ');

WRITELN)'ВВЕД'ИТЕ ЗНАЧЕНИЯ X,K,N :');

READ( X,K,N );

Y:=SQRT( X );

R: = SIN( X + PI/4 );

OCTATOK:= К MOD N ;

WRITELN;

WRITELN ('РЕЗУЛЬТАТЫ ВЫЧИСЛЕНИЙ :');

WRITELN ('Y=', Y:6:2 ) ;

WRITELN ('R=', R:6:2 );

WRITELN ('ОСТАТОК =', ОСТАТОК :3 )

END.

 

ВОПРОСЫ ДЛЯ САМОКОНТРОЛЯ

1. Для чего предназначен оператор присваивания?

2. Чему равно значение Y после выполнения следующих операторов при­сваивания:

Y:= 1;

А: = 5-Y;

Y:=Y+2*A;

3. Перечислите константы в операторах присваивания А:= 3; В15:= 7; Y2:=2*A- 4*B1;

4. Перечислите переменные в операторе присваивания SUMMA: = SQR(X) + 3#A

5. Для чего предназначен оператор ввода?

6. Может ли быть константа параметром оператора ввода?

7. Для чего предназначен оператор вывода?

8. Каков смысл следующих предложений языка ПАСКАЛЬ:

(* ВЫВОД РЕЗУЛЬТАТОВ*)

WRITE ('ВЫВОД РЕЗУЛЬТАТОВ')

9. Что понимается под составным оператором?

 

 

еще рефераты
Еще работы по информатике