- •Альбом лабораторных работ по информатике
- •Лабораторная работа №1
- •Выполнение лабораторной работы №1.
- •Лабораторная работа №2
- •Выполнение лабораторной работы №2.
- •Лабораторная работа №3.
- •Лабораторная работа №4.
- •Выполнение лабораторной работы №4.
- •Лабораторная работа №5.
- •Работа программы.
- •Лабораторная работа №6.
- •Выполнение лабораторной работы №6.
- •Текст программы.
- •Работа программы.
- •Лабораторная работа №7.
- •Работа программы.
Выполнение лабораторной работы №6.
Алгоритм решения задачи
Текст программы.
Program N6;
Uses crt;
Var n1,n2,n3,i,dalshe:integer;
a,b,z:real;
Function y1(x:real):real;
begin
y1:=2+38*sqrt(1-sqr((x-13.032)/23));
end;
Function y2(x:real):real;
begin
y2:=-0.72*x+14.81;
end;
Function Pryamoug(n:integer):real;
var xh,y,h,S:real;
i:integer;
begin
h:=(b-a)/n;
xh:=a;
S:=0;
for i:=0 to n-1
do
begin
if (xh<z)
then y:=y1(xh)
else y:=y2(xh);
S:=S+y*h;
xh:=xh+h;
end;
Pryamoug:=S;
end;
Function Trapec(n:integer):real;
var x,y,h,S:real;
i:integer;
begin
h:=(b-a)/n;
x:=a;
S:=h*(y1(a)+y2(b))/2;
for i:=1 to n-1
do
begin
if (x<z)
then y:=y1(x)
else y:=y2(x);
S:=S+y*h;
x:=x+h;
end;
Trapec:=S;
end;
Function Simpson(n:integer):real;
var x,y,yy,h,S:real;
i:integer;
begin
h:=(b-a)/n;
x:=a;
S:=h*(y1(a)+y2(b))/6;
for i:=1 to n-1
do
begin
if (x<z)
then
begin
y:=y1(x);
yy:=y1(x+h/2);
end
else
begin
y:=y2(x);
yy:=y2(x+h/2)
end;
S:=S+(2*y+4*yy)*h/6;
x:=x+h;
end;
Simpson:=S;
end;
Label start;
Begin
start:
clrscr;
a:=-9.936;
z:=-7.225;
b:=0;
writeln('‚Введите n1');
Read(n1);
writeln(' Введите n2');
Read(n2);
writeln(' Введите n3');
Read(n3);
writeln('____________________________________________________');
writeln('| Число разбиения | Результат |');
writeln('| |_____________________________|');
writeln('| n | A | B | C |');
writeln('|____________________|_________|_________|_________|');
writeln('| ',n1:8,' |',Pryamoug(n1):8:4,' |', Trapec(n1):8:4,' |', Simpson(n1):8:4,' |');
writeln('| ',n2:8,' |',Pryamoug(n2):8:4,' |', Trapec(n2):8:4,' |', Simpson(n2):8:4,' |');
writeln('| ',n3:8,' |',Pryamoug(n3):8:4,' |', Trapec(n3):8:4,' |', Simpson(n3):8:4,' |');
writeln('|____________________|___________________|_________|');
readkey;
Writeln('Повторить? (1/0)');
Read(dalshe);
If (dalshe=1)
then goto start;
Работа программы.
Лабораторная работа №7.
Тема. Массивы. Множества. Работа с псевдослучайными последовательностями (ПСП). Работа с цветом.
Задание. С помощью ПСП сформировать двухмерный MxN массив из элементов. В качестве элементов использовать слова из K..L символов A..Z (одномерный массив символов латинского алфавита). Осуществить подсчет элементов, удовлетворяющих условиям задания. Проверку заданных условий поиска реализовать с использованием типа множества. Вывести на экран сформированный массив в виде таблицы, выделив цветом подсчитанные элементы. Результат подсчета вывести на экран в отдельном окне.
(Здесь: M и N - соответственно число строк и столбцов формируемой
таблицы; K и L - соответственно минимальное и максимальное число букв в формируемых словах - элементах массива).
Методические указания
При формировании массива использовать стандартные подпрограммы ПСП - Random, Randomize, а также, возможно использование функции CHR. Коды ASCII символов A..Z - 65..90. Слова формируются в одномерных массивах, каждый из которых состоит из L ячеек; буквы записываются без пробела, начиная с первой ячейки.
Незаполненные буквами позиции массива в конце слов заполнить символами пробела - код ASCII - 32.
Для вывода на экран строки заданного цвета необходимо:
- в программе указать об использовании модуля CRT (USES CRT; - эта
директива должна присутствовать в начале текста программы).
- перед использованием стандартной процедуры вывода необходимо задать
цвет вывода соответствующим значением параметра X стандартной процедуры TextColor(X).
Данные.
Вариант 5
Выделить цветом подсчитать число слов, удовлетворяющих следующим условиям.
Первая и последняя буквы в слове – согласные.
Слово принадлежит столбцу, в котором первые шесть слов имеют в сумме хотя бы четыре гласные буквы.
K=2, L=7, M=20, N=10
Выполнение лабораторной работы №7.
Алгоритм решения задачи.
Текст программы.
Program N7;
Uses CRT;
Var m,n,k,l,kolbukv,i,j,t,kolslov:integer;
sl:string;
bukva:integer;
slova:array[1..20, 1..10] of string;
Function Proverka(slovo:string; stolb:integer):boolean;
var p,q,kolglas:integer;
usl1, usl2:boolean;
glasnye:set of char;
begin
glasnye:=['a','e','i','o','u','y',
'A','E','I','O','U','Y'];
usl1:=false;
usl2:=false;
if (
not(slovo[length(slovo)] in glasnye))
then usl1:=true;
if (usl1)
then Proverka:=true
else Proverka:=false;
end;
Begin
clrscr;
randomize;
m:=20;
n:=10;
k:=2;
l:=7;
textcolor(white);
for i:=1 to m do
for j:=1 to n do
begin
kolbukv:=2+random(6);
sl:='';
for t:=1 to kolbukv do
begin
bukva:=65+random(26);
sl:=sl+chr(bukva);
end;
slova[i,j]:=sl;
end;
writeln('Tablitsa:');
kolslov:=0;
for i:=1 to m do
begin
for j:=1 to n do
begin
if (Proverka(slova[i,j],j)and (i mod 3=0))
then
begin
textcolor(green);
kolslov:=kolslov+1;
end
else textcolor(red);
write(slova[i,j]:8);
end;
end;
textcolor(red);
Write('Выделенных слов: ',kolslov);
readkey;
End.