Практическая часть для отчета

ПРАКТИЧЕСКАЯ ЧАСТЬ ДЛЯ ОТЧЕТА

Контрольная работа №1

Составить программу находящую площадь и периметр квадрата по введенным с клавиатуры эначениям его стороны.

programex_1;

vara,s,p:real;

Begin

writeln('введите сторону квадрата');

readln(a);

S:=a*a;

P:=4*a;

writeln('Площадь = ',s);

writeln('Периметр = ',p);

readln;

end.

Пример.

Сторона квадрата =3

Площадь = 9

Объем = 12

Контрольная работа №2

Составить программу вычисляющую значение выражения у=r-9/x3+5*√(2+r2)

programex_2;

vary:real;

x,r:integer;

Begin

write('Ведите значения x,r');

readln(x,r);

y:=r-9/(x*x*x)+5*sqrt(2+sgr(r));

writeln('y=',y);

readln;

end.

Пример.

Ведите значения x,r через пробел 1 2

y=5.24744871391589

Контрольная работа №3

Вывести на экран семь степеней целого числа а=2 в строчку через пробел.

Programex_3;

vara, i, prod: Integer;

Begin

WriteLn(a);

Read(a);

prod := 2;

fori := 1 to7 do

Begin

prod := prod*a;

Write(prod,' ');

read

end;

end.

Пример.

Вывести на экран семь степеней целого числа.a=2,выводит числа в строчку через пробел

4 8 16 32 64 128 256

Контрольная работа №4

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

programtest;

vari,right,mark,v: longint;

answer,true1,true2,true3: char;

Begin

right:=0;

v:=3;

true1:='a';

true2:='b';

true3:='c';

fori:=1 tov do begin

ifi=1 then begin

writeln('Вопрос 1.Самоебольшоеозеро-море ...');

writeln('a) Каспийское');

writeln('b) Аральское');

writeln('c) Байкал');

readln(answer);

ifanswer=true1 theninc(right);

end;

ifi=2 thenbegin

writeln('Вопрос 2. Самое глубокое озеро на планете - Байкал. Его глубина составляет ... м');

writeln('a) 1500');

writeln('b) 1620');

writeln('c) 1200');

readln(answer);

ifanswer=true2 theninc(right);

end;

ifi=3 then begin

writeln('Вопрос 3.Местом накопления каких ресурсов являются горы?');

writeln('a) топливных');

writeln('b) климатических');

writeln('c) водных');

readln(answer);

ifanswer=true3 theninc(right);

end;

end;

ifright>1 thenmark:=5

elsemark:=2;

writeln('Вашаоценка ',mark,'. Вы дали ',right,' правильных ответов');

end.

Пример.

Самое большое озеро-море a= каспийское

а

Контрольная работа №5

Для целого числа х найти сумму квадратов его цифр в случае, если х трехзначное.

programnumber;

varb,b0,b1:integer;

Begin

write('Введите целое трехзначное число ');

readln(b);

b0 := b mod10;

b1 := b div10;

writeln('summa= ', b1 + b0);

end.

Пример.

Введите целое трехзначное число 178

summa= 25

Контрольная работа №6

Найти минимум из 3-х чисел введенных с клавиатуры.

programex_2;

vara1, a2, a3, min: integer;

Begin

write ('Введите три числа: ');

readln (a1, a2, a3);

ifa1 <= a2 then

min := a1

Else

min := a2;

ifa3 < min then

min := a3;

writeln ('минимальное из них: ', min);

readln

end.

Пример.

введите a1,a2,a3

1 2 3

минимальное из них: 1

Контрольная работа №7

Вычислить последовательность значений функции у=7х2-14/х+а ,где х принадлежит промежутку от[-10,-3]

programex_1;

varx,a:integer;y:real;

Begin

writeln('введите x');

readln(x);

writeln('введите a');

readln(a);

y:=7*(x*x)-14/x+a;

writeln('ответ ',y);

readln;

end.

Пример.

введите x

-10

введите a

ответ 706.4

Контрольная работа №8

Вывести на экран действительные числа в промежутке от -8 до 12 с шагом Н=0,5

Program ex_1;

varn,m: real;

Begin

write('Началопромежутка:' ); readln(n);

write('Конецпромежутка:' ); readln(m);

writeln(n );

whilen<=(m-0.5) do begin

n:=n+0.5;

writeln(n );

end;

end.

Пример.

Начало промежутка:-8

Конец промежутка:12

-8

-7.5

-7

-6.5

-6

-5.5

-5

-4.5

-4

-3.5

-3

-2.5

-2

-1.5

-1

-0.5

0.5

1.5

2.5

3.5

4.5

5.5

6.5

7.5

8.5

9.5

10.5

11.5

Контрольная работа №9

Вводится произвольная последовательность целых чисел, заканчивающаяся

нулем найти количество четных чисел.

Var

a, s, n:integer;

Begin

WriteLn('Введите числа, завершение -- 0:');

n:=0; s:=0;

Read(a);

while a<>0dobegin

ifnotodd(a)thenbegin

inc(n); s:=s+a;

end;

Read(a);

end;

if n>0then

WriteLn('Среднее арифметическое четных: ',s/n)

Else

WriteLn('Четных чисел не введено.');

end.

Пример.

Вводится произвольная последовательность. Окончание последовательности - 0.

10 10 20 30 0

Среднее арифметическое четных: 17.5

Контрольная №10

Вычислить у=2/5+3/7+4/9+…+а/в

Programex_10;

Vari, s, n:real;

Begin

S:=0;

Writeln ('Vvedite N');

Readln(n); i:=2;

Whilei<=n do

Begin

S:=s + (i)/(i*2+1);

I:=i+1;

End; writeln(S); readln; end.

Пример.

Vvedite N

0.828571428571429

Контрольная №11

Удалить наибольший элемент массива вещественных чисел.

VarA:array[1..100] ofinteger;

i,n,imax:byte;

Begin

write('Кол-воэлементов: ');readln(n);

Fori:=1 ton do

Begin

write('A[',i,'] = ');

readln(A[i]);

End;

writeln('Исходный');

imax:=1;

Fori:=1 ton do

Begin

write(A[i]:4);

ifA[i]>A[imax] thenimax:=i;

End;

writeln;

writeln('Max = ',A[imax]);

dec(n);

Fori:=imax ton do

A[i]:=A[i+1];

writeln('Преобразованный');

Fori:=1 ton do

write(A[i]:4);

readln;

End.

Пример.

Кол-во элементов: 5

A[1] = 1

A[2] = 2

A[3] = 3

A[4] = 4

A[5] = 5

Исходный

1 2 3 4 5

Max = 5

Преобразованный

Контрольная №12

Найти произведение положительных элементов двумерного массива целых чисел кратных 5.

Programotr;

Uses Crt;

var i,j,k:integer;

A:array[1..10,1..10]ofinteger;

Begin

CLRSCR;

k:=1;

for i:=1to10dobegin

for j:=1to10dobegin

A[i,j]:=random(99)+1;

Write(A[i,j],' ');

if A[i,j]div5=0then k:=k*A[i,j];

end;

Writeln;

end;

Writeln('k= ', k);

end.

Пример.

10 3 4 5 5 7 8 3 2 9

6 7 3 6 5 9 8 6 7 7

4 4 7 9 2 4 6 9 6 6

6 7 7 7 5 2 10 2 7 7

9 10 9 10 8 10 10 1 9 2

10 4 6 1 6 6 7 5 3 1

2 10 8 6 3 10 1 7 1 4

9 6 10 1 9 5 5 8 2 3

5 5 10 5 6 2 1 7 1 10

6 6 9 6 5 9 2 3 7 9

k= 291504128

Контрольная работа №13

практическая часть для отчета - student2.ru

programex_2;

Var

x,m: real;

Begin

writeln('x=');

readln(x);

m:=e*sqr(cos(x))-sin(x);

writeln('m=',m);

readln;

end.

Пример.

x=2

m=-0.438550301037024

Контрольная работа №14

Вычислить

практическая часть для отчета - student2.ru

programex_14;

varx,y,c:real;

Begin

write('x= ');

read(x);

write('c= ');

read(c);

ifx>c then

y:=sqrt(x+5/((x*x)+3))

else ifx<=c then

y:=(2/x-7*(x*x*x*x*x));

writeln('y= ',y);

readln;end.

Пример

x= 5

c= 2

y= 2.275647474582

Контрольная работа №15

1/2*3/4*5/6*7/8* ...

Programex_15;

Vari, s, n:real;

Begin

S:=1;

Writeln ('Vvedite N');

Readln(n); i:=2;

Whilei<=n do

Begin

S:=s * (I-1)/i;

I:=i+2;

End; writeln(S); readln; end.

Пример.

Vvedite N

0.375

Контрольная работа №16

практическая часть для отчета - student2.ru [-1,0], h=0.01

programex_1;

VAR

N,X,pi, Y, H, X0, X1: REAL;

sin:real;

BEGINpi:=3.14;

x0:= -1; x1:=0;

H := 0.01;

X:=X0;

WHILEX<=X1

DO BEGIN

Y:=2*sqrt(1+(3*sin*x));

X := X + H;

WRITELN (X,' | ',Y);

END;

END.

Пример.

-0.99 | 2

-0.98 | 2

-0.97 | 2

-0.96 | 2

-0.95 | 2

-0.94 | 2

-0.93 | 2

-0.92 | 2

-0.91 | 2

-0.9 | 2

-0.89 | 2

-0.88 | 2

-0.87 | 2

-0.86 | 2

-0.85 | 2

-0.84 | 2

-0.83 | 2

-0.82 | 2

-0.81 | 2

-0.8 | 2

-0.79 | 2

-0.78 | 2

-0.77 | 2

-0.76 | 2

-0.75 | 2

-0.74 | 2

-0.73 | 2

-0.72 | 2

-0.71 | 2

-0.7 | 2

-0.69 | 2

-0.68 | 2

-0.67 | 2

-0.66 | 2

-0.65 | 2

-0.64 | 2

-0.63 | 2

-0.62 | 2

-0.61 | 2

-0.6 | 2

-0.59 | 2

-0.58 | 2

-0.57 | 2

-0.56 | 2

-0.55 | 2

-0.54 | 2

-0.53 | 2

-0.52 | 2

-0.51 | 2

-0.5 | 2

-0.49 | 2

-0.48 | 2

-0.47 | 2

-0.46 | 2

-0.45 | 2

-0.44 | 2

Контрольная работа №17

Заполнить линейный массив по формуле: х[i]=3 практическая часть для отчета - student2.ru ;

programpp;

Vara:array[1..10] ofreal;

i,x,y:integer;

Begin

writeln('Массив: ');

fori := 1 to10 do

Begin

a [ i ]:=3*i*i+8*sqrt(i)-4;

write(a [ i ] :1:2, ' ');

end;

writeln;

fori := 1 to10 do

writeln;

end.

Пример.

Массив:

7.00 19.31 36.86 60.00 88.89 123.60 164.17 210.63 263.00 321.30

Контрольная работа №18

Заполнить массив случайным образом и вывести на экран только элементы большие наперед заданного числа а

programfpro;

Var

x : array[1..100] ofinteger;

i : integer;a:integer;

Begin

writeln('a= ');

readln(a);

fori :=1 to10 do

Begin

x[i] := random(1,20);

if(x[i] >10) and(x[i] <20) thenwriteln(x[i]);

end;

end.

Пример.

a=8

Begin

clrscr;

writeln('Введитебукву');readln(i);

case i of

'е','э','о','а','ы','я','и','ю','ё':writeln('Гласная')

elsewriteln('Согласная')

end;

readln

end.

Пример.

Введите букву

а

Гласная

Begin

writeln('Введите целые числа, окончание ввода 0');

readln(a);

ifa <>0 then

Begin

chisla;

writeln(a);

end;

end;

Begin

chisla;

readln

end.

Пример.

Введите целые числа, окончание ввода 0

Введите целые числа, окончание ввода 0

Введите целые числа, окончание ввода 0

Введите целые числа, окончание ввода 0

Введите целые числа, окончание ввода 0

Введите целые числа, окончание ввода 0

Begin

assign(f,'a.txt');

reset (f); dmin:=255;

while noteof(f) do

Begin

inc(ks);

readln(f,s);

ifs[1]=s[length(s)] theninc(ko);

iflength(s)<dmin thendmin:=length(s);

end;

writeln('число строк ',ks);

writeln('число строк начинающихся и заканчивающихся одинаковыми символами ',ko);

writeln('самые короткие строки: ');

reset(f);

while noteof(f) do

Begin

readln(f,s);

iflength(s)=dmin thenwriteln(s);

end;

writeln('симетричныестроки:');

reset(f);

ks:=0;

while noteof(f) do

Begin

sp:='';

readln(f,s);

forj:=1 tolength(s) do

Begin

sp:=s[j]+sp;

ifsp=s thenwriteln(s);

end;

end;

ifks=0 thenwriteln('отсутствуют');

close(f);

readln;

end.

Пример.

число строк 4

число строк начинающихся и заканчивающихся одинаковыми символами 0

самые короткие строки:

Ванек

симетричные строки:

отсутствуют

Begin

line(100,100,150,50);

line(150,50,200,100);

line(200,100,100,100);

floodfill(120,90,clgreen);

SetBrushcolor(clred);

rectangle(115,100,185,150);

SetBrushcolor(clblue);

circle(150,75,5);

SetBrushcolor(clgray);

rectangle(125,120,140,140);

SetBrushcolor(clred);

textOut(150,110,'Дом');

end.

Пример.

практическая часть для отчета - student2.ru

Общие вопросы обязательные для выполнения студентом не зависимо от вариантов

1.Дано натуральное число n. Найти число, цифры, которых расположены в обратном порядке цифрам данного числа.

Programpp;

varn:longint;

p,s:real;

m,x:integer;

Begin

write('Введите натуральное число : ');

readln(n);

s:=0;

p:=0.1;

forx:=(n mod10) downto1 do

n:=n div10;

p:=p*10;

s:=s+x*p;

writeln(s:0:0);

readln;

end.

2.Данынатуральныечислаa, b, c. Вычислить практическая часть для отчета - student2.ru .

Programpp;

vara,b,c:integer;abc:real;

functionfaktorial(k:integer):integer;varp,j:integer;

Begin

p:=1;

forj:= 1 tok do

Begin

p:=p*j;

end;

faktorial:=p;

end;

Begin

writeln('a,b,c');

readln(a,b,c);

abc:=faktorial(a+b+c)/faktorial(a)*faktorial(b)*faktorial(c);

writeln('rez=',abc);

end.

3.Дан массив, элементы, которых являются случайными натуральными числами. Преобразовать данный массив, расположив их элементы в порядке убывания

constn=20;

typemass=array[1..n] ofinteger;

varx:mass; i,k,m,j:integer;

Begin

fori:=1 ton do

Begin

x[i]:=random (40)-20;

write (x[i],' ');

end;

writeln;

fori:= n downto2 do

Begin

k:=i;

m:=x[i];

forj:= 1 toi-1 do

ifx[j]<m then

Begin

k:=j;

m:=x[k];

end;

ifk<>i then

Begin

x[k]:=x[i];

x[i]:=m;

end;

end;

fori:=1 ton dowrite (x[i],' ');

end.

4.Дано натуральное число n. Какое это число, простое или составное?

programpp;

varn,i:longint;

b:boolean;

Begin

Repeat

write ('Число = ');

readln(n);

untiln >0;

b:=false;

fori:=2 ton div2 do

ifn modi = 0 then

Begin

b:=true;

break;

end;

if(notb) and(n <>1) thenwriteln ('Простое') elsewriteln ('Составное');

readln;

end.

boolen –это логический тип, переменные этого типа могут принимать 2 значения true=истина и false=ложь.

5.Дан численный массив M, элементы, которых упорядочены по возрастанию и числоa. Не нарушая порядок возрастания элементов включить число aв массив M.

programptt;

Type

ppt = array[ 1 .. 22 ] ofinteger;

procedureMyInsert(vara:ppt; varn:byte; x:integer);

vari, j:byte;

Begin

i := 1;

while(i <= n) and(x > a[ i ]) do

inc(i); {или i := i + 1;}

inc(n); {или n := n + 1;}

forj := n downtoi + 1 do

a[ j ] := a[ j - 1 ];

a[ i ] := x

end;

procedurePrintArray(consta:ppt; constn:byte);

vari:byte;

Begin

fori := 1 ton do

write(a[ i ]:5);

writeln

end;

Var

a:ppt;

n, i:byte;

Begin

randomize;

n := 20;

a[ 1 ] := random(8) - 15;

fori := 2 ton do

a[ i ] := a[ i - 1 ] + random(5) + 1;

writeln('Исходныймассив: ');

PrintArray(a, n);

MyInsert(a, n, -5);

writeln('Вставленочисло -5:');

PrintArray(a, n);

MyInsert(a, n, 10);

writeln('Вставленочисло 10:');

PrintArray(a, n);

readln

end.

6.Дана числовая таблица размера n× m. Составить программу, которая обращают в нуль все элементы i-ой строки и j-ого столбца. 0≤i≤n, 0≤j≤m

constnmax=20;

vara:array[1..nmax,1..nmax] ofinteger;

m,n,i,j:byte;

mn:integer;

Begin

randomize;

Repeat

write('Количествострокдо ',nmax,' m=');

readln(m);

untilm in[1..nmax];

Repeat

write('Количество столбцов до ',nmax,' n=');

readln(n);

untiln in[1..nmax];

writeln('Исходнаяматрица:');

fori:=1 tom do

Begin

forj:=1 ton do

Begin

write(a[i,j]:3);

end;

writeln;

end;

writeln('Замена элементов строк на минимальный в них');

fori:=1 tom do

Begin

mn:=a[i,1];

forj:=1 ton do

ifa[i,j]<mn thenmn:=a[i,j];

forj:=1 ton do

Begin

a[i,j]:=mn;

write(a[i,j]:3)

end;

writeln

end;

readln

end.

7.Дана строка, состоящая исключительно из цифр. Найти наибольшее число рядом стоящих одинаковых цифр и определить, какое это число.

constny: array[boolean] ofstring[3] = ('No','Yes');

vari, n: integer; b: boolean;

Begin

writeln('Если в числе есть одинаковые цифры то выйдет слово Yes,Если нет то No ');

write('Введите число n = ');

readln(n);

n := abs(n);

b := false;

ifn >0 then

fori := 1 totrunc(ln(n) / ln(10)) do

Begin

b := n mod10 = n mod100 div10;

ifb then break;

n := n div10

end;

writeln(ny[b]);

readln

end.

8.Дано натуральное число n. Составить программу, которая рисует правильныйn -угольник.

9.Используя кодирование A ->15, B -> 16, C -> 17, D-> 18, E-> 19, …, Z-> 40 шифруйте любое слово, состоящее из заглавных английских букв.

vars:string;

s1:string;

k,l,i,j:integer;

m:array[1..100] ofinteger;

Begin

s1:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';

writeln('Введитебукву');

readln(s);

fori:=1 to30 do

forj:=1 to20 do

fork:=1 to10 do

Begin

m[j]:=k+j*1+i*2;

end;

fori:=1 tolength(s) do

forj:=1 tolength(s1) do

ifs1[j]=s[i] thenwrite(m[j]);

writeln;

readln;

end.

9.Дан численный массив M, количество элементов которого равно nи натуральное числоk (k£n). Исключить из массива элемент индекса k.

vara:array[1..100] ofinteger;

i,k,m,n:integer;

Begin

Randomize;

Write('n=');

Readln(n);

fori:=1 ton do

Begin

a[i]:=random(20)-10;

Write(a[i],' ');

end;

Writeln;

Repeat

Write('k=');

Readln(k);

untilk in[1..n];

fori:=1 ton do

ifi=k then

m:=1

Else

a[i-m]:=a[i];

n:=n-m;

fori:=1 ton do

Write(a[i],' ');

Readln;

end.

11.Найти все пятизначные числа, цифры которых составляют арифметическую прогрессию. Сколькоих?

Var

a:longint;

d,f:integer;

Begin

Repeat

writeln('Введитечислобольше 9');

readln(a);

untila>9;

d:= (a div10)mod10-a mod10;

Repeat

if(a div10)mod10-a mod10<>d thenf:=1;

a:=a div10;

untila<10;

iff=0 thenwriteln('yes')elsewriteln('no');

end.

12.Известно, что одна из корней уравнения практическая часть для отчета - student2.ru лежит в интервале [0,1]. Вычислить этот корень приближенно, с точностью 0,001 методом деления отрезка пополам.

13.Построить график функции практическая часть для отчета - student2.ru в промежутке x практическая часть для отчета - student2.ru [0,10].

14.Составить программу, позволяющую выводить каждую букву слова «INFORMATICA» с определенной позиции разным цветом через 1 секунд.

programppt;

vara,b:real;

Begin

writeln('clovo informatika');

readln(a);

Begin

while noteof(f2)do

Begin

read(f2,b);

ori:=1 ton do

ifi=1 then

Begin

TextColor(12);

write(b[i],' ');

End

else ifi=1 then

Begin

TextColor(14);

write(b[i],' ');

End

Else

Begin

TextColor(15);

write(b[i],' ');

end;

writeln;

end;

15.Траектория тела, брошенного под углом практическая часть для отчета - student2.ru к горизонту и начальной скоростью практическая часть для отчета - student2.ru (без учета сопротивления воздуха) определяется уравнениями

практическая часть для отчета - student2.ru

Моделировать траекторию полета и вычислить максимальную дальность и время полета, а также максимальную высоту подъема тела.

16.Вычислить сумму практическая часть для отчета - student2.ru , гдеn –натуральное, а х – действительное число

17. Составить программу для выведения на экран стандартных символов ASCII-кода в виде таблицы размера 16 х 16

Var

i,j: byte;

Begin

fori := 0 to15 do begin

forj := 0 to15 do

write (chr(i*16+j):2);

write (chr(i*16+j):2);

writeln

end;

readln

end.

18.Даны действительные числа a, в. Выбирая одну из действии, указанные символами ('+' , '-' , '*' , '/,), показать результат выполнения действия с данными числами.

varn:integer;

vara, b:real;

Begin

Writeln('Введите номер действия и два числа A и B');

Read(n, a, b);

casen of

1:writeln('Ответ: ',a+b);

2:writeln('Ответ: ',a-b);

3:writeln('Ответ: ',a*b);

4:writeln('Ответ: ',a/b);

elsewriteln('Ошибка');

end;

readln;

end.

19.Составить программу для записи вводимого текста с клавиатуры в текстовый файл «text1.txt», а также и для чтения с этого файла.

Programprr;

varfl:text;

str:string;

Begin

assign (fl, 'rp.txt');

rewrite (fl);

read (str);

write (fl,str);

close(fl);

end.

20.Используя тип данных – записи сформировать файл с данными: Ф.И.О., год рождения, специальность, наименование учебной группы студента

TypeAnketa=Record

FIO:string[30];

God:byte;

Dolj:string[15];

Staj:integer;

Obraz:string[2];

End;

Varf:file ofAnketa;

f1:Anketa;

j,s,n,x:integer;

ProcedureZapol(n:integer);

Vari:integer;

Begin

Assign(f,'anketa.dat');Rewrite(f);

Fori:=1 ton do Begin

WitHf1 do Begin

write('ВведитеФ.И.О [',i,']-госотрудника ');readln(FIO);

write('Введите год рождения [',i,']-го сотрудника ');readln(God);

write('Введите должность [',i,']-го сотрудника ');readln(Dolj);

write('Введите Стаж [',i,']-го сотрудника ');readln(Staj);

write('Введите оброзование [',i,']-го сотрудника (sr/vs) ');readln(Obraz);

End;

write(f,f1);

End;

End;

Begin

Repeat

Writeln('1: Заполнениеанкетy');

Writeln('2: Просмотр (Нужно чтобы файл был заполнен) ');

Writeln('3: Выход');

Write('Введите число 1-3: ');readln(x);

Casex of

1:Begin

Write('Введитекол-воучеников ');readln(n);Zapol(n);End;

2:Begin

Assign(f,'Anketa.dat');Reset(f);

s:=0;j:=0;

While notEof(f) do Begin

Read(f,f1);

Withf1 do

if(Obraz='vs')or(Obraz='Vs') tHen Begins:=s+Staj;inc(j);End;

End;

writeln('Среднее= ',s/j:0:2);

End;

End;

Untilx=3;

End.

27) Груз на невесомом жестком подвесе длинойL=1 м колебляется с большой амплитудой. Вычислить период колебания, если дано значение начального угла отклонения практическая часть для отчета - student2.ru в градусах. Уравнение колебания: практическая часть для отчета - student2.ru

Programex_1;

varl,P,t,w,g,f:real;

Begin

t:=0;

w:=0;

g:=10;

f:=0;

p:= (-g/l)*sin(f);

writeln('периодкoлебанияравен',p);

end.

28) Шарик массой 5 г и радиусом 4 мм падает в масло с высоты 1,5 м. Сила сопротивления вычисляется по формуле

практическая часть для отчета - student2.ru ( практическая часть для отчета - student2.ru скорость).

Найти время падения и конечную скорость шарика, если известно уравнение движения:

практическая часть для отчета - student2.ru

Programex_1;

Varf,n,t,u,nu,m,pi,h,r:real;

Begin

Nu:=0.92;

g:=10; m:=0.005;

pi:=3.14; h:=1.5; r:=0.04;

writeln('введите скорость движения шарика'); readln(u);

f:=6*pi*g*r*nu*u;

t:=(m*u)/(m*g*f);

writeln('t=',t);

end.

29.Вывести на экран последовательность чисел и вычислить сумму ряда: 1/2,1/4, 1/6, 1/8, 1/10, ...

programpp;

varx,y,a,b:integer;s:real;

Begin

writeln(a,b);

readln(a,b);

x:=1;

y:=2;

s:=0;

whilex<=a do begin

s:=s+x/y;

x:=x+3;

y:=y+2;

end;

writeln(s);

end.

30.Составить программу для вычисления наибольшего общего кратного трех данных натуральных чисел a, b и c.

Vara,b,c,d,K,P,T:integer; nok:real;

functionnod(x,y:integer; Varz:integer):integer;

Begin

whilex<>y do

Begin

ifx>y thenx:=x-y

elsey:=y-x

end;

z:=x

end;

Begin

writeln('enter a,b,c');

readln(a,b,c,d);

nod(a,b,K); nod(c,d,P);

nod(K,P,T);

writeln('nod(a,b,c)=', T);

nok:=(a*b*c)/T;

writeln('NOK=', nok)

end.

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ ОТЧЕТА

Составление простейших программ в Pascalявляются такие как подсчет различных букв в слове ,перестановка букв в слове, подсчет суммы одномерного массива , подсчет суммыдвумерного массива, решения уравнения и тд.

Пример .Подсчет суммы элементов одномерного массива.

Program n8;

var a:array[1..10] of integer;

s:longint;

i:integer;

begin

writeln('введите 10 элементовмассива');

s:=0;

for i:=1 to 10 do begin

readln( a[i] );

s:=s+a[i];

end;

writeln( 'Сумма элементов массива = ', s );

end.

Любая программа начинается с слова program.

Var- описания переменных.

a:array[1..10]- одномерный массив.

Begin-начало основной программы.

Writeln-вывод текста.

Readln-ввод текста

s:=0-счетчик.

For-цикл.

End-конец.

Условный оператор

Условный оператор в Паскале — if — служит для организации хода задачи таким образом, при котором изменяется последовательность выполнения операторов в зависимости от какого-либо логического условия. Логическое условие может принимать одно из двух значений: либо true (истина), либо false (ложь), соответственно, оно может быть либо истинным, либо ложным.

Programpp;

vara,b,c,s,i: integer;

k: boolean;

Begin

writeln('Введите a и b');

readln(a,b);

c:=a;

whilec<=b do

Begin

k:=true;

fori:=2 toc-1 do

ifc modi = 0 thenk:=false;

ifk=true thenwriteln(c);

c:=c+1;

end;

end.

3.Оператор варианта

Оператор case в Паскале используется в тех случаях, когда в зависимости от значения какой-либо переменной нужно выполнить те или иные действия (простые или составные операторы).Если вариантов всего два, то можно обойтись и условным оператором IF, с которым мы уже знакомы. Но если их, к примеру, десять, то использовать конструкцию if then else в pascal становится совсем нецелесообразно. В этом случае оптимален оператор CASE варианта.

Пример.

практическая часть для отчета - student2.ru

var otmetka:integer;

beginwriteln('otmetka?');readln(otmetka);if(otmetka=1)or(otmetka=2)thenwriteln('koshmar!')elseif otmetka=3thenwriteln('ploho')elseif otmetka=4thenwriteln('neploho')elseif otmetka=5thenwriteln('otlichno!')elsewriteln('takih otmetok ne bivaet');end.

Var

i: integer;

Begin

i := 0;

Repeat

i := i + 1;

until i > 10;

End.

Циклы с постусловием

Repeat — полная противоположность while. Repeat — это цикл, в котором условие стоит после тела . Причем оно выполняется тогда и только тогда, когда результат условия false; как только логическое выражение становится true, выполнение цикла прекращается.

programex;

vari, N: integer;

Begin

i := 1;

readln(N);

Repeat

write(i, ' ');

Inc(i);

untili = N + 1;

end.

Циклы с параметром

For — это цикл, в котором тело выполняется заданное количество раз.

Пример. Таблица умножения на 7

Vari:byte;

Begin

for i :=1to10do

writeln('7 × ', i,' = ',7* i);

readln

end.

Подсчет суммы первых 1000 натуральных чисел.

vari, sum: integer;

Begin

sum := 0;

fori := 1 to1000 do

sum := sum + i;

writeln('Результат: ', sum);

readln

end.

Begin

WriteLn ('введите количество элементов массивов');

ReadLn (Kolvo);

WriteLn ('введите элементы маcсива A');

Fori:=1 toKolvo do

Begin

Write(i, ') ');

ReadLn (A[i]);

end;

writeLn ('введитеэлементымаcсива B');

Fori:=1 toKolvo do

Begin

Write(i, ') ');

ReadLn (B[i]);

end;

Fori:=1 toKolvo do

C[i]:= A[i]+B[i];

Fori:=1 toKolvo do

Writeln (C[i]:5);

End.

Пример.Таблицы ASCII, конкретнее — символы, соответствующие кодам 32-255.

var i:integer;beginfor i:=32to255dowrite(chr(i):3);end.

Процедуры и функции

Подпрограмма — это фрагмент кода, который имеет свое имя и создается в случае необходимости выполнять этот код несколько (много) раз. Подпрограмма описывается единожды перед началом основной программы (до begin). Компилятор пропускает данный фрагмент кода, пока в основной программе не встретит «вызов» подпрограммы, который выглядит как обращение к ней по имени (возможно, имени с аргументами, указанными в скобках).Процедура без параметров.

procedurepr;

vari:integer;

Begin

fori:=1 to60 do begin

write('*');

writeln;

end;

end;

Begin

pr;

end.Процедура с параметром.procedure Tr( x, y: integer; color:system.Drawing.Color);beginMoveTo(x, y);LineTo(x, y-60);LineTo(x+100, y);LineTo(x, y);FloodFill(x+20, y-20,color);end;beginSetPenColor(clBlack);Tr(100, 100, clBlue);Tr(200, 100, clGreen);Tr(200, 160, clRed);end.10.Множественный тип данных.Записи в Паскале – структурированный комбинированный тип данных. Запись состоит из определенного числа компонент, называемых полями, которые могут быть разного типа.

typemydate = record

month: 1..12;

day: 1..31;

year: integer

end;

vard: mydate;

Begin

d.day:=1;

d.month:=12;

readln(d.year);

writeln(d.day,'/',d.month,'/',d.year);

end.11.Файловый тип данных.Текстовый файл в Паскале — это совокупность строк произвольной длины, которые разделены между собой метками конца строки, а весь файл заканчивается меткой конца файла.Считать из файла input.txt числа (числа записаны в столбик). Затем записать их произведение в файл output.txtvar p, x:integer; f: text;beginassign(f,'input.txt');reset(f);p :=1;whilenoteof(f)dobeginreadln(f, x); p := p * x;end;close(f);assign(f,'output.txt');rewrite(f);writeln(f,'Произведение чисел ', p);close(f);end.12.Графические возможности Паскаля модули CRT, GRAPH.Для использования графических возможностей ПаскальАВС служит модуль GraphABC.

programxxx;

usesgraphabc, crt;

Var

i, x,y:integer;

Begin

fori:=1 to500 do

Begin

x:= random(600);

y:= random(400) ;

circle(x, y,random(40));

floodfill(x, y,rgb(random(155)+100,random(155)+100,random(155)+100));

delay(100);

end;

end.

Заключение

ПРАКТИЧЕСКАЯ ЧАСТЬ ДЛЯ ОТЧЕТА

Контрольная работа №1

Составить программу находящую площадь и периметр квадрата по введенным с клавиатуры эначениям его стороны.

programex_1;

vara,s,p:real;

Begin

writeln('введите сторону квадрата');

readln(a);

S:=a*a;

P:=4*a;

writeln('Площадь = ',s);

writeln('Периметр = ',p);

readln;

end.

Пример.

Сторона квадрата =3

Площадь = 9

Объем = 12

Контрольная работа №2

Составить программу вычисляющую значение выражения у=r-9/x3+5*√(2+r2)

programex_2;

vary:real;

x,r:integer;

Begin

write('Ведите значения x,r');

readln(x,r);

y:=r-9/(x*x*x)+5*sqrt(2+sgr(r));

writeln('y=',y);

readln;

end.

Пример.

Ведите значения x,r через пробел 1 2

y=5.24744871391589

Контрольная работа №3

Вывести на экран семь степеней целого числа а=2 в строчку через пробел.

Programex_3;

vara, i, prod: Integer;

Begin

WriteLn(a);

Read(a);

prod := 2;

fori := 1 to7 do

Begin

prod := prod*a;

Write(prod,' ');

read

end;

end.

Пример.

Вывести на экран семь степеней целого числа.a=2,выводит числа в строчку через пробел

4 8 16 32 64 128 256

Контрольная работа №4

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

programtest;

vari,right,mark,v: longint;

answer,true1,true2,true3: char;

Begin

right:=0;

v:=3;

true1:='a';

true2:='b';

true3:='c';

fori:=1 tov do begin

ifi=1 then begin

writeln('Вопрос 1.Самоебольшоеозеро-море ...');

writeln('a) Каспийское');

writeln('b) Аральское');

writeln('c) Байкал');

readln(answer);

ifanswer=true1 theninc(right);

end;

ifi=2 thenbegin

writeln('Вопрос 2. Самое глубокое озеро на планете - Байкал. Его глубина составляет ... м');

writeln('a) 1500');

writeln('b) 1620');

writeln('c) 1200');

readln(answer);

ifanswer=true2 theninc(right);

end;

ifi=3 then begin

writeln('Вопрос 3.Местом накопления каких ресурсов являются горы?');

writeln('a) топливных');

writeln('b) климатических');

writeln('c) водных');

readln(answer);

ifanswer=true3 theninc(right);

end;

end;

ifright>1 thenmark:=5

elsemark:=2;

writeln('Вашаоценка ',mark,'. Вы дали ',right,' правильных ответов');

end.

Пример.

Самое большое озеро-море a= каспийское

а

Контрольная работа №5

Для целого числа х найти сумму квадратов его цифр в случае, если х трехзначное.

programnumber;

varb,b0,b1:integer;

Begin

write('Введите целое трехзначное число ');

readln(b);

b0 := b mod10;

b1 := b div10;

writeln('summa= ', b1 + b0);

end.

Пример.

Введите целое трехзначное число 178

summa= 25

Контрольная работа №6

Найти минимум из 3-х чисел введенных с клавиатуры.

programex_2;

vara1, a2, a3, min: integer;

Begin

write ('Введите три числа: ');

readln (a1, a

Наши рекомендации