Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Топ:
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Интересное:
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Дисциплины:
2018-01-13 | 234 |
5.00
из
|
Заказать работу |
|
|
ПРАКТИЧЕСКАЯ ЧАСТЬ ДЛЯ ОТЧЕТА
Контрольная работа №1
Составить программу находящую площадь и периметр квадрата по введенным с клавиатуры эначениям его стороны.
program ex_1;
var a,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)
program ex_2;
var y: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 в строчку через пробел.
Program ex_3;
var a, i, prod: Integer;
Begin
WriteLn(a);
Read(a);
prod:= 2;
for i:= 1 to 7 do
Begin
prod:= prod*a;
Write(prod,' ');
read
end;
end.
Пример.
Вывести на экран семь степеней целого числа.a=2,выводит числа в строчку через пробел
4 8 16 32 64 128 256
Контрольная работа №4
Составить программу тест по географии, задающую тестовые вопросы с вариантами ответов, и выставляющий оценку, в зависимости от количества правильных ответов.
program test;
var i,right,mark,v: longint;
answer,true1,true2,true3: char;
Begin
right:=0;
v:=3;
true1:='a';
true2:='b';
true3:='c';
for i:=1 to v do begin
if i=1 then begin
writeln('Вопрос 1.Самоебольшоеозеро-море...');
writeln('a) Каспийское');
writeln('b) Аральское');
writeln('c) Байкал');
readln(answer);
if answer=true1 then inc(right);
end;
if i=2 thenbegin
writeln('Вопрос 2. Самое глубокое озеро на планете - Байкал. Его глубина составляет... м');
writeln('a) 1500');
writeln('b) 1620');
writeln('c) 1200');
readln(answer);
if answer=true2 then inc(right);
end;
if i=3 then begin
writeln('Вопрос 3.Местом накопления каких ресурсов являются горы?');
writeln('a) топливных');
writeln('b) климатических');
|
writeln('c) водных');
readln(answer);
if answer=true3 then inc(right);
end;
end;
if right>1 then mark:=5
else mark:=2;
writeln('Вашаоценка ',mark,'. Вы дали ',right,' правильных ответов');
end.
Пример.
Самое большое озеро-море a= каспийское
а
Контрольная работа №5
Для целого числа х найти сумму квадратов его цифр в случае, если х трехзначное.
program number;
var b,b0,b1:integer;
Begin
write('Введите целое трехзначное число ');
readln(b);
b0:= b mod 10;
b1:= b div 10;
writeln('summa= ', b1 + b0);
end.
Пример.
Введите целое трехзначное число 178
summa= 25
Контрольная работа №6
Найти минимум из 3-х чисел введенных с клавиатуры.
program ex_2;
var a1, a2, a3, min: integer;
Begin
write ('Введите три числа: ');
readln (a1, a2, a3);
if a1 <= a2 then
min:= a1
Else
min:= a2;
if a3 < min then
min:= a3;
writeln ('минимальное из них: ', min);
readln
end.
Пример.
введите a1,a2,a3
1 2 3
минимальное из них: 1
Контрольная работа №7
Вычислить последовательность значений функции у=7х2-14/х+а,где х принадлежит промежутку от[-10,-3]
program ex_1;
var x,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;
var n,m: real;
Begin
write('Началопромежутка:'); readln(n);
write('Конецпромежутка:'); readln(m);
writeln(n);
while n<=(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<>0 dobegin
ifnot odd(a) thenbegin
inc(n); s:=s+a;
end;
Read(a);
end;
if n>0 then
WriteLn('Среднее арифметическое четных: ',s/n)
Else
WriteLn('Четных чисел не введено.');
end.
Пример.
Вводится произвольная последовательность. Окончание последовательности - 0.
|
10 10 20 30 0
Среднее арифметическое четных: 17.5
Контрольная №10
Вычислить у=2/5+3/7+4/9+…+а/в
Program ex_10;
Var i, s, n:real;
Begin
S:=0;
Writeln ('Vvedite N');
Readln(n); i:=2;
While i<=n do
Begin
S:=s + (i)/(i*2+1);
I:=i+1;
End; writeln(S); readln; end.
Пример.
Vvedite N
0.828571428571429
Контрольная №11
Удалить наибольший элемент массива вещественных чисел.
Var A: array [1..100] of integer;
i,n,imax:byte;
Begin
write('Кол-воэлементов: ');readln(n);
For i:=1 to n do
Begin
write('A[',i,'] = ');
readln(A[i]);
End;
writeln('Исходный');
imax:=1;
For i:=1 to n do
Begin
write(A[i]:4);
if A[i]>A[imax] then imax:=i;
End;
writeln;
writeln('Max = ',A[imax]);
dec(n);
For i:=imax to n do
A[i]:=A[i+1];
writeln('Преобразованный');
For i:=1 to n 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.
Program otr;
Uses Crt;
var i,j,k: integer;
A: array [1..10,1..10] ofinteger;
Begin
CLRSCR;
k:=1;
for i:=1 to 10 dobegin
for j:=1 to 10 dobegin
A[i,j]:=random(99)+1;
Write(A[i,j],' ');
if A[i,j] div 5=0 then 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
program ex_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
Вычислить
program ex_14;
var x,y,c:real;
Begin
write('x= ');
read(x);
write('c= ');
read(c);
if x>c then
y:=sqrt(x+5/((x*x)+3))
else if x<=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*...
Program ex_15;
Var i, s, n:real;
Begin
S:=1;
Writeln ('Vvedite N');
Readln(n); i:=2;
While i<=n do
Begin
S:=s * (I-1)/i;
I:=i+2;
End; writeln(S); readln; end.
Пример.
Vvedite N
0.375
Контрольная работа №16
[-1,0], h=0.01
program ex_1;
VAR
N,X,pi, Y, H, X0, X1: REAL;
sin:real;
BEGIN pi:=3.14;
x0:= -1; x1:=0;
H:= 0.01;
X:=X0;
WHILE X<=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 ;
program pp;
Var a: array [1..10] of real;
i,x,y:integer;
Begin
writeln('Массив: ');
for i:= 1 to 10 do
Begin
a [ i ]:=3*i*i+8*sqrt(i)-4;
write(a [ i ]:1:2, ' ');
end;
writeln;
for i:= 1 to 10 do
writeln;
end.
Пример.
Массив:
7.00 19.31 36.86 60.00 88.89 123.60 164.17 210.63 263.00 321.30
Контрольная работа №18
Заполнить массив случайным образом и вывести на экран только элементы большие наперед заданного числа а
program fpro;
Var
x: array [1..100] of integer;
i: integer;a:integer;
Begin
writeln('a= ');
readln(a);
for i:=1 to 10 do
Begin
x[i]:= random(1,20);
if (x[i] >10) and (x[i] <20) then writeln(x[i]);
end;
end.
Пример.
a=8
Begin
clrscr;
writeln('Введитебукву');readln(i);
case i of
'е','э','о','а','ы','я','и','ю','ё':writeln('Гласная')
else writeln('Согласная')
end;
readln
end.
Пример.
Введите букву
а
Гласная
Begin
writeln('Введите целые числа, окончание ввода 0');
readln(a);
if a <>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 not eof(f) do
Begin
inc(ks);
readln(f,s);
if s[1]=s[length(s)] then inc(ko);
if length(s)<dmin then dmin:=length(s);
end;
writeln('число строк ',ks);
writeln('число строк начинающихся и заканчивающихся одинаковыми символами ',ko);
writeln('самые короткие строки: ');
reset(f);
while not eof(f) do
Begin
readln(f,s);
if length(s)=dmin then writeln(s);
end;
writeln('симетричныестроки:');
reset(f);
ks:=0;
while not eof(f) do
Begin
sp:='';
readln(f,s);
for j:=1 to length(s) do
Begin
sp:=s[j]+sp;
if sp=s then writeln(s);
end;
end;
if ks=0 then writeln('отсутствуют');
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.
Пример.
Общие вопросы обязательные для выполнения студентом не зависимо от вариантов
|
1.Дано натуральное число n. Найти число, цифры, которых расположены в обратном порядке цифрам данного числа.
Program pp;
var n:longint;
p,s:real;
m,x:integer;
Begin
write('Введите натуральное число: ');
readln(n);
s:=0;
p:=0.1;
for x:=(n mod 10) downto 1 do
n:=n div 10;
p:=p*10;
s:=s+x*p;
writeln(s:0:0);
readln;
end.
2.Данынатуральныечисла a, b, c. Вычислить .
Program pp;
var a,b,c:integer;abc:real;
function faktorial(k:integer):integer; var p,j:integer;
Begin
p:=1;
for j:= 1 to k 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.Дан массив, элементы, которых являются случайными натуральными числами. Преобразовать данный массив, расположив их элементы в порядке убывания
const n=20;
type mass= array [1..n] of integer;
var x:mass; i,k,m,j:integer;
Begin
for i:=1 to n do
Begin
x[i]:=random (40)-20;
write (x[i],' ');
end;
writeln;
for i:= n downto 2 do
Begin
k:=i;
m:=x[i];
for j:= 1 to i-1 do
if x[j]<m then
Begin
k:=j;
m:=x[k];
end;
if k<>i then
Begin
x[k]:=x[i];
x[i]:=m;
end;
end;
for i:=1 to n do write (x[i],' ');
end.
4.Дано натуральное число n. Какое это число, простое или составное?
program pp;
var n,i:longint;
b:boolean;
Begin
Repeat
write ('Число = ');
readln(n);
until n >0;
b:=false;
for i:=2 to n div 2 do
if n mod i = 0 then
Begin
b:=true;
break;
end;
if (not b) and (n <>1) then writeln ('Простое') else writeln ('Составное');
readln;
end.
boolen –это логический тип, переменные этого типа могут принимать 2 значения true=истина и false=ложь.
5.Дан численный массив M, элементы, которых упорядочены по возрастанию и число a. Не нарушая порядок возрастания элементов включить число a в массив M.
program ptt;
Type
ppt = array [ 1.. 22 ] of integer;
procedure MyInsert(var a:ppt; var n:byte; x:integer);
var i, j:byte;
Begin
i:= 1;
while (i <= n) and (x > a[ i ]) do
inc(i); {или i:= i + 1;}
inc(n); {или n:= n + 1;}
for j:= n downto i + 1 do
a[ j ]:= a[ j - 1 ];
a[ i ]:= x
end;
procedure PrintArray(const a:ppt; const n:byte);
var i:byte;
Begin
for i:= 1 to n do
write(a[ i ]:5);
writeln
end;
Var
a:ppt;
n, i:byte;
Begin
randomize;
n:= 20;
a[ 1 ]:= random(8) - 15;
for i:= 2 to n 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
const nmax=20;
var a: array [1..nmax,1..nmax] of integer;
m,n,i,j:byte;
mn:integer;
Begin
randomize;
Repeat
write('Количествострокдо ',nmax,' m=');
readln(m);
until m in [1..nmax];
Repeat
write('Количество столбцов до ',nmax,' n=');
readln(n);
until n in [1..nmax];
writeln('Исходнаяматрица:');
for i:=1 to m do
Begin
for j:=1 to n do
Begin
write(a[i,j]:3);
end;
writeln;
end;
writeln('Замена элементов строк на минимальный в них');
for i:=1 to m do
Begin
mn:=a[i,1];
for j:=1 to n do
if a[i,j]<mn then mn:=a[i,j];
for j:=1 to n do
Begin
a[i,j]:=mn;
write(a[i,j]:3)
end;
writeln
end;
readln
end.
7.Дана строка, состоящая исключительно из цифр. Найти наибольшее число рядом стоящих одинаковых цифр и определить, какое это число.
|
const ny: array [boolean] of string[3] = ('No','Yes');
var i, n: integer; b: boolean;
Begin
writeln('Если в числе есть одинаковые цифры то выйдет слово Yes,Если нет то No ');
write('Введите число n = ');
readln(n);
n:= abs(n);
b:= false;
if n >0 then
for i:= 1 to trunc(ln(n) / ln(10)) do
Begin
b:= n mod 10 = n mod 100 div 10;
if b then break;
n:= n div 10
end;
writeln(ny[b]);
readln
end.
8.Дано натуральное число n. Составить программу, которая рисует правильный n -угольник.
9.Используя кодирование A ->15, B -> 16, C -> 17, D-> 18, E-> 19, …, Z-> 40 шифруйте любое слово, состоящее из заглавных английских букв.
var s:string;
s1:string;
k,l,i,j:integer;
m: array [1..100] of integer;
Begin
s1:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
writeln('Введитебукву');
readln(s);
for i:=1 to 30 do
for j:=1 to 20 do
for k:=1 to 10 do
Begin
m[j]:=k+j*1+i*2;
end;
for i:=1 to length(s) do
for j:=1 to length(s1) do
if s1[j]=s[i] then write(m[j]);
writeln;
readln;
end.
9.Дан численный массив M, количество элементов которого равно n и натуральное число k (k£n). Исключить из массива элемент индекса k.
var a: array [1..100] of integer;
i,k,m,n:integer;
Begin
Randomize;
Write('n=');
Readln(n);
for i:=1 to n do
Begin
a[i]:=random(20)-10;
Write(a[i],' ');
end;
Writeln;
Repeat
Write('k=');
Readln(k);
until k in [1..n];
for i:=1 to n do
if i=k then
m:=1
Else
a[i-m]:=a[i];
n:=n-m;
for i:=1 to n do
Write(a[i],' ');
Readln;
end.
11.Найти все пятизначные числа, цифры которых составляют арифметическую прогрессию. Сколькоих?
Var
a:longint;
d,f:integer;
Begin
Repeat
writeln('Введитечислобольше 9');
readln(a);
until a>9;
d:= (a div 10) mod 10-a mod 10;
Repeat
if (a div 10) mod 10-a mod 10<>d then f:=1;
a:=a div 10;
until a<10;
if f=0 then writeln('yes') else writeln('no');
end.
12.Известно, что одна из корней уравнения лежит в интервале [0,1]. Вычислить этот корень приближенно, с точностью 0,001 методом деления отрезка пополам.
13.Построить график функции в промежутке x [0,10].
14.Составить программу, позволяющую выводить каждую букву слова «INFORMATICA» с определенной позиции разным цветом через 1 секунд.
program ppt;
var a,b:real;
Begin
writeln('clovo informatika');
readln(a);
Begin
while not eof(f2) do
Begin
read(f2,b);
or i:=1 to n do
if i=1 then
Begin
TextColor(12);
write(b[i],' ');
End
else if i=1 then
Begin
TextColor(14);
write(b[i],' ');
End
Else
Begin
TextColor(15);
write(b[i],' ');
end;
writeln;
end;
15.Траектория тела, брошенного под углом к горизонту и начальной скоростью (без учета сопротивления воздуха) определяется уравнениями
Моделировать траекторию полета и вычислить максимальную дальность и время полета, а также максимальную высоту подъема тела.
16.Вычислить сумму , где n – натуральное, а х – действительное число
17. Составить программу для выведения на экран стандартных символов ASCII-кода в виде таблицы размера 16 х 16
Var
i,j: byte;
Begin
for i:= 0 to 15 do begin
for j:= 0 to 15 do
write (chr(i*16+j):2);
write (chr(i*16+j):2);
writeln
end;
readln
end.
18.Даны действительные числа a, в. Выбирая одну из действии, указанные символами ('+', '-', '*', '/,), показать результат выполнения действия с данными числами.
var n:integer;
var a, b:real;
Begin
Writeln('Введите номер действия и два числа A и B');
Read(n, a, b);
case n of
1:writeln('Ответ: ',a+b);
2:writeln('Ответ: ',a-b);
3:writeln('Ответ: ',a*b);
4:writeln('Ответ: ',a/b);
else writeln('Ошибка');
end;
readln;
end.
19.Составить программу для записи вводимого текста с клавиатуры в текстовый файл «text1.txt», а также и для чтения с этого файла.
Program prr;
var fl:text;
str:string;
Begin
assign (fl, 'rp.txt');
rewrite (fl);
read (str);
write (fl,str);
close(fl);
end.
20.Используя тип данных – записи сформировать файл с данными: Ф.И.О., год рождения, специальность, наименование учебной группы студента
Type Anketa= Record
FIO:string[30];
God:byte;
Dolj:string[15];
Staj:integer;
Obraz:string[2];
End;
Var f: file of Anketa;
f1:Anketa;
j,s,n,x:integer;
Procedure Zapol(n:integer);
Var i:integer;
Begin
Assign(f,'anketa.dat');Rewrite(f);
For i:=1 to n do Begin
WitH f1 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);
Case x of
1: Begin
Write('Введитекол-воучеников ');readln(n);Zapol(n); End;
2: Begin
Assign(f,'Anketa.dat');Reset(f);
s:=0;j:=0;
While not Eof(f) do Begin
Read(f,f1);
With f1 do
if (Obraz='vs') or (Obraz='Vs') tHen Begin s:=s+Staj;inc(j); End;
End;
writeln('Среднее= ',s/j:0:2);
End;
End;
Until x=3;
End.
27) Груз на невесомом жестком подвесе длинойL=1 м колебляется с большой амплитудой. Вычислить период колебания, если дано значение начального угла отклонения в градусах. Уравнение колебания:
Program ex_1;
var l,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 м. Сила сопротивления вычисляется по формуле
( скорость).
Найти время падения и конечную скорость шарика, если известно уравнение движения:
Program ex_1;
Var f,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,...
program pp;
var x,y,a,b:integer;s:real;
Begin
writeln(a,b);
readln(a,b);
x:=1;
y:=2;
s:=0;
while x<=a do begin
s:=s+x/y;
x:=x+3;
y:=y+2;
end;
writeln(s);
end.
30.Составить программу для вычисления наибольшего общего кратного трех данных натуральных чисел a, b и c.
Var a,b,c,d,K,P,T:integer; nok:real;
function nod(x,y:integer; Var z:integer):integer;
Begin
while x<>y do
Begin
if x>y then x:=x-y
else y:=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 (ложь), соответственно, оно может быть либо истинным, либо ложным.
Program pp;
var a,b,c,s,i: integer;
k: boolean;
Begin
writeln('Введите a и b');
readln(a,b);
c:=a;
while c<=b do
Begin
k:=true;
for i:=2 to c-1 do
if c mod i = 0 then k:=false;
if k=true then writeln(c);
c:=c+1;
end;
end.
3.Оператор варианта
Оператор case в Паскале используется в тех случаях, когда в зависимости от значения какой-либо переменной нужно выполнить те или иные действия (простые или составные операторы).Если вариантов всего два, то можно обойтись и условным оператором IF, с которым мы уже знакомы. Но если их, к примеру, десять, то использовать конструкцию if then else в pascal становится совсем нецелесообразно. В этом случае оптимален оператор CASE варианта.
Пример.
var otmetka: integer;
begin writeln('otmetka?');readln(otmetka); if (otmetka=1) or (otmetka=2) then writeln('koshmar!') elseif otmetka=3 then writeln('ploho') elseif otmetka=4 then writeln('neploho') elseif otmetka=5 then writeln('otlichno!') else writeln('takih otmetok ne bivaet'); end.Var
i: integer;
Begin
i:= 0;
Repeat
i:= i + 1;
until i > 10;
End.
Циклы с постусловием
Repeat — полная противоположность while. Repeat — это цикл, в котором условие стоит после тела. Причем оно выполняется тогда и только тогда, когда результат условия false; как только логическое выражение становится true, выполнение цикла прекращается.
program ex;
var i, N: integer;
Begin
i:= 1;
readln(N);
Repeat
write(i, ' ');
Inc(i);
until i = N + 1;
end.
Циклы с параметром
For — это цикл, в котором тело выполняется заданное количество раз.
Пример. Таблица умножения на 7
Var i: byte;
Begin
for i:=1 to 10 do
writeln('7 × ', i,' = ',7* i);
readln
end.
Подсчет суммы первых 1000 натуральных чисел.
var i, sum: integer;
Begin
sum:= 0;
for i:= 1 to 1000 do
sum:= sum + i;
writeln('Результат: ', sum);
readln
end.
Begin
WriteLn ('введите количество элементов массивов');
ReadLn (Kolvo);
WriteLn ('введите элементы маcсива A');
For i:=1 to Kolvo do
Begin
Write(i, ') ');
ReadLn (A[i]);
end;
writeLn ('введитеэлементымаcсива B');
For i:=1 to Kolvo do
Begin
Write(i, ') ');
ReadLn (B[i]);
end;
For i:=1 to Kolvo do
C[i]:= A[i]+B[i];
For i:=1 to Kolvo do
Writeln (C[i]:5);
End.
Пример.Таблицы ASCII, конкретнее — символы, соответствующие кодам 32-255.
var i: integer; beginfor i:=32 to 255 do write(chr(i):3); end.Процедуры и функции
Подпрограмма — это фрагмент кода, который имеет свое имя и создается в случае необходимости выполнять этот код несколько (много) раз. Подпрограмма описывается единожды перед началом основной программы (до begin). Компилятор пропускает данный фрагмент кода, пока в основной программе не встретит «вызов» подпрограммы, который выглядит как обращение к ней по имени (возможно, имени с аргументами, указанными в скобках).Процедура без параметров.procedure pr;
var i:integer;
Begin
for i:=1 to 60 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.Множественный тип данных. Записи в Паскале – структурированный комбинированный тип данных. Запись состоит из определенного числа компонент, называемых полями, которые могут быть разного типа.type mydate = record
month: 1..12;
day: 1..31;
year: integer
end;
var d: mydate;
Begin
d.day:=1;
d.month:=12;
readln(d.year);
writeln(d.day,'/',d.month,'/',d.year);
end. 11.Файловый тип данных. Текстовый файл в Паскале — это совокупность строк произвольной длины, которые разделены между собой метками конца строки, а весь файл заканчивается меткой конца файла.Считать из файла input.txt числа (числа записаны в столбик). Затем записать их произведение в файл output.txt var p, x: integer; f: text; begin assign(f,'input.txt');reset(f);p:=1; whilenot eof(f) dobegin readln(f, x); p:= p * x; end;close(f);assign(f,'output.txt');rewrite(f);writeln(f,'Произведение чисел ', p);close(f); end. 12.Графические возможности Паскаля модули CRT, GRAPH. Для использования графических возможностей ПаскальАВС служит модуль GraphABC.program xxx;
uses graphabc, crt;
Var
i, x,y:integer;
Begin
for i:=1 to 500 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
Составить программу находящую площадь и периметр квадрата по введенным с клавиатуры эначениям его стороны.
program ex_1;
var a,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)
program ex_2;
var y: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 в строчку через пробел.
Program ex_3;
var a, i, prod: Integer;
Begin
WriteLn(a);
Read(a);
prod:= 2;
for i:= 1 to 7 do
Begin
prod:= prod*a;
Write(prod,' ');
read
end;
end.
Пример.
Вывести на экран семь степеней целого числа.a=2,выводит числа в строчку через пробел
4 8 16 32 64 128 256
Контрольная работа №4
Составить программу тест по географии, задающую тестовые вопросы с вариантами ответов, и выставляющий оценку, в зависимости от количества правильных ответов.
program test;
var i,right,mark,v: longint;
answer,true1,true2,true3: char;
Begin
right:=0;
v:=3;
true1:='a';
true2:='b';
true3:='c';
for i:=1 to v do begin
if i=1 then begin
writeln('Вопрос 1.Самоебольшоеозеро-море...');
writeln('a) Каспийское');
writeln('b) Аральское');
writeln('c) Байкал');
readln(answer);
if answer=true1 then inc(right);
end;
if i=2 thenbegin
writeln('Вопрос 2. Самое глубокое озеро на планете - Байкал. Его глубина составляет... м');
writeln('a) 1500');
writeln('b) 1620');
writeln('c) 1200');
readln(answer);
if answer=true2 then inc(right);
end;
if i=3 then begin
writeln('Вопрос 3.Местом накопления каких ресурсов являются горы?');
writeln('a) топливных');
writeln('b) климатических');
writeln('c) водных');
readln(answer);
if answer=true3 then inc(right);
end;
end;
if right>1 then mark:=5
else mark:=2;
writeln('Вашаоценка ',mark,'. Вы дали ',right,' правильных ответов');
end.
Пример.
Самое большое озеро-море a= каспийское
а
Контрольная работа №5
Для целого числа х найти сумму квадратов его цифр в случае, если х трехзначное.
program number;
var b,b0,b1:integer;
Begin
write('Введите целое трехзначное число ');
readln(b);
b0:= b mod 10;
b1:= b div 10;
writeln('summa= ', b1 + b0);
end.
Пример.
Введите целое трехзначное число 178
summa= 25
Контрольная р
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!