Міністерство освіти і науки, молоді та спорту України
Київський національний університет будівництва і архітектури
Кафедра АТП
КУРСОВА РОБОТА
З дисципліни: «Алгоритмізація і програмування»
На тему: «Створення меню»
Варіант-1
Виконав:
Студент Гр. ЗАТП-11
Перевірив:
Викладач
Київ-2012
ЗМІСТ
1. Умови задач
2. Графічні схеми алгоритму
3. Текст програми на даній мові програмування
4. Результати роботи програми
5. Висновок (пояснення до програми)
1. Умови задач
1. Дано текст. Слова в цьому тексті розділені пробілами. Підрахувати кількість літер а в останньому слові тексту.
2. Задано дійсні числа а1,….,а10. Обчислити а1+а22+…+а1010.
3. Дано дві матриці порядку 4. Отримати послідовність b1,…,b4, яка складається з нулів та одиниць, де bi=1, якщо всі елементи і-го рядка першої матриці більше відповідних елементів і-го рядка другої матриці.
2. Графічні схеми алгоритму
1.
2.
3.
Головна програма
('1-Підрахунок букв а в тексті', '2- Обчислення а1+а22+…+а1010 ', '3-Знаходження послідовності з 2 матриць', '4-Вихід'); |
Procedure text; Procedure calculation; Procedure matrix; |
Write('Введіть номер режиму та натисніть клавішу <Enter>'); |
2. Текст програми
Program kursova;
Uses crt;
Const
k=4; {кількість пунктів меню}
NameRegime: array [1..k] of string [26]=
('1-Підрахунок букв а в тексті',
'2- Обчислення а1+а22+…+а1010 ',
'3-Знаходження послідовності з 2 матриць',
'4-Вихід');
var
i,j:byte;
Procedure text;
var
R,S:string;
P,K,i,n,l:integer;
begin
clrscr;
writeln('Введіть текст');
readln(S);
n:=length(S);
for i:=1 to n do
if S[i]=' ' then K:=i;
for i:=K to n do
if S[i]='a' then l:=l+1;
writeln('В останньому слові ',l, ' букв a');
readkey
end;
Procedure calculation;
var
a:array [1..10] of real;
S:real;
i:integer;
begin
clrscr;
writeln('Введіть 10 чисел');
S:=0;
for i:=1 to 10 do begin
writeln('a[', i,']=');
read(a[i]);
S:=S+exp(i*ln(a[i]));
end;
writeln('S=', S:12:3);
readkey
end;
Procedure matrix;
var
a,c:array[1..4,1..4] of integer;
b:array[1..4] of integer;
i,j:integer;
begin
clrscr;
writeln('Введіть матрицю а');
for i:=1 to 4 do begin
for j:=1 to 4 do begin
writeln('a[',i,j,']=');
read(a[i,j]);
end;
writeln
end;
writeln('Введіть матрицю c');
for i:=1 to 4 do begin
for j:=1 to 4 do begin
writeln('c[',i,j,']=');
read(c[i,j]);
end;
writeln
end;
for i:=1 to 4 do begin
for j:=1 to 4 do
if a[i,j]>c[i,j] then b[i]:=b[i]+1;
end;
for i:=1 to 4 do begin
if (b[i]=4) then b[i]:=1
else b[i]:=0;
writeln('b[',i,']=', b[i]);
end;
readkey
end;
begin
While True do begin
ClrScr;
GotoXY(35,5);
Write('Головне меню');
For j:=1 to 4 do begin
GotoXY(38,7+j);
Write(NameRegime[j]);
end;
GotoXY(20,14);
Write('Введіть номер режиму та натисніть клавішу <Enter>');
Readln(i);
Case i of
1:text;
2: calculation;
3:matrix;
4:begin
ClrScr;
halt;
end;
else
begin
GotoXY(3,18);
Write('Такого режиму немає. Натисніть будь-яку клавішу та спробуйте ще раз!');
readkey;
end; end; end;
End.
3. Результати роботи програми
Головне меню
1-Підрахунок букв а в тексті
2- Обчислення а1+а22+…+а1010
3-Знаходження послідовності з 2 матриць
4-Вихід
Введіть номер режиму та натисніть клавішу <Enter>1
введіть текст я ходив до магазину в останньому слові 2 букв a
Головне меню
1-Підрахунок букв а в тексті',
2- Обчислення а1+а22+…+а1010
3-Знаходження послідовності з 2 матриць
4-Вихід
Введіть номер режиму та натисніть клавішу <Enter>2
Введіть 10 чисел
a[1]=
1
a[2]=
2
a[3]=
3
a[4]=
4
a[5]=
5
a[6]=
6
a[7]=
7
a[8]=
8
a[9]=
9
a[10]=
10
S=10405071317.000
Головне меню
1-Підрахунок букв а в тексті',
2- Обчислення а1+а22+…+а1010
3-Знаходження послідовності з 2 матриць
4-Вихід
Введіть номер режиму та натисніть клавішу <Enter>3
Введіть матрицю а
a[11]=1
a[12]=2
a[13]=3
a[14]=4
a[21]=2
a[22]=3
a[23]=5
a[24]=6
a[31]=7
a[32]=8
a[33]=9
a[34]=10
a[41]=11
a[42]=12
a[43]=13
a[44]=14
Введіть матрицю с
c[11]=-1
c[12]=-2
c[13]=-3
c[14]=-4
c[21]=-2
c[22]=3
c[23]=5
c[24]=-6
c[31]=1
c[32]=2
c[33]=3
c[34]=4
c[41]=-11
c[42]=0
c[43]=15
c[44]=16
b[1]=1
b[2]=0
b[3]=1
b[4]=0
Головне меню
1-Підрахунок букв а в тексті',
2- Обчислення а1+а22+…+а1010
3-Знаходження послідовності з 2 матриць
4-Вихід
Введіть номер режиму та натисніть клавішу <Enter>4
Повний вихід із програми;
Головне меню
1-Підрахунок букв а в тексті',
2- Обчислення а1+а22+…+а1010
3-Знаходження послідовності з 2 матриць
4-Вихід
Введіть номер режиму та натисніть клавішу <Enter>8
Такого режиму немає. Натисніть будь-яку клавішу та спробуйте ще раз!
Висновок (пояснення до програми)
Дана робота складається із 3 задач, які оформлені в окремі процедури та об’єднані спільним меню. Вибір розрахунку потрібної задачі здійснюється за допомогою оператора «Case», де 1-text (задача підрахуноку букв а в тексті), 2- calculation (задача обчислення а1+а22+…+а1010), 3-matrix (задача знаходження послідовності з 2 матриць). В процедурі 1 використані оператори роботи з текстовими перемінними. В процедурі 2 – робота з формулами. В процедурі 3 – робота з матрицями, де використані оператори циклу «For» і працюємо з рядками та стовпчиками матриць. Головна програма «Меню» забезпечує постійне підтримання на екрані тексту, де потрібно вибрати необхідну програму. Повний вихід із програми здійснюється по команді 4. В випадку, якщо вибраний номер неіснуючої процедури, програма виводить про помилку та запропонує ввести заново потрібну процедуру.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.