Розробка алгоритмів та складання програм на мові програмування 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.

Результат роботи програми: