Розробка алгоритмів та складання програм на мові програмування MS VisualBasic for Application
Полтавський університет споживчої кооперації України
Факультет економіки та менеджменту
Кафедра економічної кібернетики
Звіт про виконання індивідуальних завдань
з дисципліни „Інформатика та комп’ютерна техніка”
на тему: „Розробка алгоритмів та складання програм на мові програмування MS VisualBasic for Application”
Виконав студент гр. ЕК - 22
спеціальності 6.050102 “Економічна кібернетика”
Кот Денис Володимирович
Полтава 2007
Зміст
1. Алгоритми у вигляді блок–схем для розв’язання задач
1.1 Блок-схема до задачі № 1
1.2 Блок-схема до задачі № 2
1.3 Блок-схема до задачі № 3
1.4 Блок-схема до задачі № 4
2. Задачі
2.1 Задача № 1 (прикладна задача)
2.2 Задача № 2 (задача на одновимірний масив)
2.3 Задача № 3 (задача на двовимірний масив)
2.4 Задача № 4 (задача на використання символьних величин)
Блок-схема до задачі № 1
Блок-схема до задачі № 2
Блок-схема до задачі № 3
Блок-схема до задачі № 4
Варіант №22
1. Прикладна задача
Якщо a,b,c,d – сторони чотирикутника, то чи не є він паралелограмом?
Текст програми:
program k1;
var
a,b,c,d:integer;
begin
writeln('Введите длины сторон четырехугольника');
read(a,b,c,d);
if ((a=b) and (c=d)) or ((a=c) and (b=d))
then writeln('Четырехугольник- паралелограмм')
else writeln('Это другая фигура');
readln
end.
Результат роботи програми:
2. Задача на одновимірний масив
Визначити максимальний елемент серед елементів масиву В, які задовольняють умову х>і >< 0, та його порядковий номер.
Текст програми:
program k2;
const n=10;
var
b:array [1..n] of integer;
i,max,number:integer;
begin
writeln('Введите элементы массива');
for i:=1 to n do
begin
write('b[',i,']=');
readln(b[i])
end;
for i:=1 to n do
begin
write(b[i]:4);
end;
max:=-maxint; number:=0;
for i:=1 to n do
begin
if (b[i]<0) and (b[i]>max) then
begin
max:=b[i];
number:=i
end;
end;
writeln;
if number<> 0 then
begin
writeln('Максимальный среди отрицательных ',max);
writeln('Его номер в массиве ',number);
end
else writeln('Все элементы - неотрицательные');
readln
end.
Результат роботи програми
3. Задача на двовимірний масив
Знайти найбільший і найменший елементи матриці R(K,N), K<=20, N<=10 та поміняти їх місцями. Надрукувати матрицю R й одержану матрицю.
Текст програми (для простоти введення візьмемо менші значення k та n):
program k3;
const k=6;n=3;
var
r:array [1..k,1..n] of integer;
i,j,max,min,x1,x2,y1,y2:integer;
begin
writeln('Введите элементы массива');
for i:=1 to k do
for j:=1 to n do
begin
write('r[',i,',',j,']=');
readln(r[i,j])
end;
writeln;
for i:=1 to k do
begin
for j:=1 to n do write(r[i,j]:3);
writeln
end;
max:=r[1,1];
x1:=1;y1:=1;
for i:=1 to k do
for j:=1 to n do
if r[i,j]>max then
begin
max:=r[i,j];
x1:=i;y1:=j
end;
min:=r[1,1];
x2:=1;y2:=1;
for i:=1 to k do
for j:=1 to n do
if r[i,j]<min then
begin
min:=r[i,j];
x2:=i;y2:=j
end;
writeln;
writeln('Максимальный= ',max);
writeln('Минимальный= ',min);
r[x1,y1]:=min;r[x2,y2]:=max;
writeln;
writeln('Новый массив');
for i:=1 to k do
begin
for j:=1 to n do write(r[i,j]:3);
writeln
end;
readln
end.
Результат роботи програми:
4. Задача на використання символьних величин
Задано рядок, що містить від 1 до 30 слів, у кожному з яких від 1 до 5 прописних латинських літер, між сусідніми словами – кома, за останнім словом – крапка. Надрукувати цей же рядок слів, але в зворотньому порядку.
Текст програми:
program k4;
uses crt;
var
a,b:string;
i,n:integer;
begin
clrscr;
writeln('Введите строку слов через запятую');
readln(a);
b:='';
n:=length(a);
writeln;
writeln('Строка в обратном порядке слов');
writeln;
for i:=n-1 downto 0 do
if (a[i]<>',') and (i<>0) then b:=a[i]+b
else
begin
write(b);b:='';
if i<>0 then write(',')
end;
write('.');
readln
end.
Результат роботи програми: