Смекни!
smekni.com

Курсовая (стр. 2 из 2)

введите радиус круга r[5]=9.3

введите длину дуги сегмента a[5]=1.2

---------------------------------------------------------

№ r a s

---------------------------------------------------------

1 15.7 0.50 0.09859212439

2 10.4 1.10 0.02214053650

3 12.8 0.76 0.04293500082

4 8.2 0.40 0.70273015694

5 9.3 1.20 0.02157409847

Задание № 9

Составить программу, содержащую цикл, для вычисления следующей суммы:

Расчет выполнить по двум вариантам: 1. В качестве ak принять значения aиз таблицы 10.1; 2. В качестве ak принять значения R из таблицы 10.1.

Ход программы.

Program zadacha_9;

Var c,a:real;

z,n:integer;

Begin

Write('Введите количество значений а ');

Readln(n);

For z:=1 to n do

Begin

Write('a=');

Readln(a);

c:=3*a+c;

end;

c:=1+c;

Writeln('С=',c:1:2);

Readln;

end.

Решение 1.

Введите количество значений а 4

a=0.5

a=0.4

a=0.7

a=0.8

С=8.20

Решение 2.

Введите количество значений а 5

a=15.7

a=14.2

a=16.4

a=10.3

a=8.1

С=195.10

Задание № 10

Загрузить в оперативную память компьютера программу, разработанную в задании 5.1. На ее основе составить программу с организацией вложенного цикла типа FOR для определения всех возможных значений Sсегм при изменении параметров R и a. Значения параметров R и a приведены в таблице 10.1. Организовать вывод на печать в виде таблицы значений R, a и Sсегм. Записать программу на диск под новым именем.

Таблица 10.1

Параметр 1 2 3 4 5
R 15,7 14,2 16,4 10,3 8,1
a 0,5 0,4 0,7 0,8 ───

Ход программы.

Program zadacha_10;

Var r,a :array [1..5] of real;

s:array [1..5,1..5] of real;

i,j:integer;

Begin

For i:=1 to 5 do

Begin

Write('Введите r[',i,']=');

Read(r[i]);

end;

For i:=1 to 4 do

Begin

Write('Введите a[',i,']=');

Readln(a[i]);

end;

Writeln('r a s');

For i:=1 to 5 do

For j:=1 to 4 do

Begin

s[i,j]:=1/(2*r[i]*r[i]*(a[j]-sin(a[j])));

end;

Writeln('---------------------------------------------------------');

Writeln(' № r a s ');

Writeln('---------------------------------------------------------');

For i:=1 to 5 do

For j:=1 to 4 do

Writeln(i:3,j:2,r[i]:15:1,a[j]:15:1,s[i,j]:16:8);

Writeln('---------------------------------------------------------') ;

Readln;

end.

Решение.

Введите r[1]=15.7

Введите r[2]=14.2

Введите r[3]=16.4

Введите r[4]=10.3

Введите r[5]=8.1

Введите a[1]=0.5

Введите a[2]=0.4

Введите a[3]=0.7

Введите a[4]=0.8

---------------------------------------------------------

№ r a s

---------------------------------------------------------

1 1 15.7 0.5 0.09859212

1 2 15.7 0.4 0.19169774

1 3 15.7 0.7 0.03636421

1 4 15.7 0.8 0.02454482

2 1 14.2 0.5 0.12052159

2 2 14.2 0.4 0.23433632

2 3 14.2 0.7 0.04445256

2 4 14.2 0.8 0.03000423

3 1 16.4 0.5 0.09035534

3 2 16.4 0.4 0.17568254

3 3 16.4 0.7 0.03332620

3 4 16.4 0.8 0.02249425

4 1 10.3 0.5 0.22906940

4 2 10.3 0.4 0.44539142

4 3 10.3 0.7 0.08448878

4 4 10.3 0.8 0.05702755

5 1 8.1 0.5 0.37040044

5 2 8.1 0.4 0.72018863

5 3 8.1 0.7 0.13661659

5 4 8.1 0.8 0.09221236

---------------------------------------------------------

Задание № 11

Изменить программу, разработанную в задании № 10, использовав для ввода массивов процедуру.

Ход программы.

Program zadacha_11;

Type massiv=array [1..5] of real;

Procedure q(var z:massiv; n:integer; x:char);

Var i:integer;

Begin

For i:=1 to n do

Begin

Write('Введите ',x,'[',i,']=');

Readln(z[i]);

end;

end;

Var r,a :massiv;

s:array [1..5,1..5] of real;

i,j,n:integer;

Begin

n:=5;

q(r,n,'r');

n:=4;

q(a,n,'a');

Writeln('r a s');

For i:=1 to 5 do

For j:=1 to 4 do

Begin

s[i,j]:=1/(2*r[i]*r[i]*(a[j]-sin(a[j])));

end;

Writeln('---------------------------------------------------------');

Writeln(' № r a s ');

Writeln('---------------------------------------------------------');

For i:=1 to 5 do

For j:=1 to 4 do

Writeln(i:3,j:2, r[i]:15:1,a[j]:15:1,s[i,j]:16:8);

Writeln('---------------------------------------------------------') ;

Readln;

end.

Решение.

Введите r[1]=15.7

Введите r[2]=14.2

Введите r[3]=16.4

Введите r[4]=10.3

Введите r[5]=8.1

Введите a[1]=0.5

Введите a[2]=0.4

Введите a[3]=0.7

Введите a[4]=0.8

---------------------------------------------------------

№ r a s

---------------------------------------------------------

1 1 15.7 0.5 0.09859212

1 2 15.7 0.4 0.19169774

1 3 15.7 0.7 0.03636421

1 4 15.7 0.8 0.02454482

2 1 14.2 0.5 0.12052159

2 2 14.2 0.4 0.23433632

2 3 14.2 0.7 0.04445256

2 4 14.2 0.8 0.03000423

3 1 16.4 0.5 0.09035534

3 2 16.4 0.4 0.17568254

3 3 16.4 0.7 0.03332620

3 4 16.4 0.8 0.02249425

4 1 10.3 0.5 0.22906940

4 2 10.3 0.4 0.44539142

4 3 10.3 0.7 0.08448878

4 4 10.3 0.8 0.05702755

5 1 8.1 0.5 0.37040044

5 2 8.1 0.4 0.72018863

5 3 8.1 0.7 0.13661659

5 4 8.1 0.8 0.09221236

---------------------------------------------------------

Задание

Составить программу для вычисления функции

S = ex1-x2/ey1-y2 ,

где х1, х2 —корни уравнения 3.х2 + 4.х —2 = 0;

у1, у2 —корни уравнения 6.у2 —2.у —5 = 0;

Результат округлить до двух десятичных знаков.


Корни уравнения вычисляются по формуле:

где а, b, с —коэффициенты уравнения а.x2 + b.х + с = 0.

Для вычисления корней уравнения использовать:

а) процедуру;

б) модуль.

В случае получения комплексных корней (при b2 - 4а.с < 0) предусмотреть вывод на экран сообщения:

“Комплексные корни. Выполнение программы прекращено”.

Записать программу на диск.

Министерство образования Р.Ф.

Архангельский Государственный Технический Университет.

Курсовая работа по информатике.

Программирование на языке Turbo Pascal.

Выполнила студентка 1 курса

Факультета МТД


Усова Елизавета

Проверил: Старкова АВ

Архангельск 2004.