Реферати українською » Информатика, программирование » 10 завдань із рішеннями програмуванням на Паскале


Реферат 10 завдань із рішеннями програмуванням на Паскале

Завдання 1.

Умова: Знайти середнє арифметичне загальної сукупності елементів тих рядків заданої матриці, останній елемент яких дорівнює 1.

Програма:

program S2_Z1;

type m=array[1..100,1..100] of integer;

var A:m;

procedure vvod(m,n:integer;var x:m);

var i,j: integer;

begin writeln('введите елементи масиву');

for i:=1 to m do

for j:=1 to n do

read(x[i,j]);

end;

procedure arf(m,n:integer;var x:m);

var i,j,s:integer;sr:real;

begin

for i:=1 to m do begin s:=0; sr:=0;

if x[i,n]=1 then begin

for j:=1 to n do

s:=s+x[i,j]; sr:=s/n;

writeln ('середнє арифметичне ',і,' рядки одно ',sr:5:2); end; end;

end;

begin

vvod(3,3,A);

arf(3,3,A);

end.

Завдання 2.

Умова: Одержати масив Х(n) за правилом: Хі =1, тоді як i-м стовпці заданої матриці хоча б один елемент перевищує заданий значення З, інакше Xі=0. Знайти загальна кількість елементів, великих З.

Програма:

program S2_Z2;

type m=array[1..100,1..100] of integer; mas=array[1..100] of integer;

var A:m;

procedure vvod(m,n:integer;var x:m);

var i,j: integer;

begin writeln('введите елементи масиву');

for i:=1 to m do

for j:=1 to n do

read(x[i,j]);

end;

procedure moped(m,n:integer;var y:m);

var i,j,c,k:integer; X:mas;

begin k:=0; writeln('введите величину З='); readln(c);

for j:=1 to n do x[j]:=0;

for j:=1 to n do

for i:=1 to m do

if y[i,j]>c then begin X[j]:=1; k:=k+1; end;

writeln('элементы масиву Х:');

for j:=1 to n do write(X[j],' ');

writeln;

writeln('число елементів матрици перевищують число ',з,' одно ',k)

end;

begin

vvod(2,5,A);moped(2,5,A);readln;

end.

Завдання 3.

Умова: Дан масив A(5,5). Змінити частина матриці, котра під головною діагоналлю так: якщо елемент A[i,j] цієї маленької частини матриці більше елемента A[j,i], то поставити елементу A[i,j] нового значення, однакову підлозі сумі цих двох елементів.

Програма:

program S2_Z3;

type m=array[1..100,1..100] of real;

var A:m;

procedure vvod(m,n:integer;var x:m);

var i,j: integer;

begin

writeln('введите елементи масиву');

for i:=1 to m do

for j:=1 to n do

read(x[i,j]);

end;

procedure mat(m,n:integer;var x:m);

var i,j: integer; t:real;

begin

writeln('изменённый матриця A[i,j] матиме такий вигляд');

for i:=1 to m do

for j:=1 to n do

if i>j then if x[i,j] > x[j,i] then x[i,j]:=(x[i,j]+x[j,i])/2;

for i:=1 to m do

for j:=1 to n do

write( A[i,j]:2:1,' ');

end;

begin

vvod(5,5,A);

mat(5,5,A);

end.

Завдання 4.

Умова: Визначити найдовший послідовність поспіль які йдуть нулів в заданому одномірному масиві.

Програма:

program S2_Z4;

type m=array[1..100] of integer;

var A:m;

procedure vvod(m:integer;var x:m);

var і: integer;

begin writeln('введите елементи масиву');

for i:=1 to m do

read(x[i]);

end;

procedure moped(m:integer;var x:m);

var i,k,n:integer;

begin k:=0;n:=0;

for i:=1 to m do

if x[i]=0 then k:=k+1

          else begin

          if x[i-1]=0 then

          if k>n then n:=k;

          k:=0;end;

if k>n then

writeln('самая велика послідовність нулів становить ',k)

       else

writeln('самая велика послідовність нулів становить ',n);

end;

begin

vvod(20,A); moped(20,A);

end.

Завдання 5.

Написати програму, считывающую заданий кількість одномірних масивів, визначальну мінімальний елемент у кожному також подсчитывающую кількість нулів серед елементів, розташованих за мінімальним.

Програма:

program S2_Z5;

type m=array[1..100] of integer; mas=array[1..10] of m;

var A:mas;

procedure vvod(kn:integer;x:mas);

var y:m;i,t,k,min,k0:integer;

begin

for k:=1 to kn do begin

k0:=0; min:=1000;

writeln('введите у эл-ов в ',k,'-ом массиве');read (t);

writeln('теперь введіть елементи цього масиву');

for i:=1 to t do

read(y[i]);

for i:=1 to t do

if y[i]<min then min:=y[i];

writeln('минимальный елемент цього масиву дорівнює ',min);

for i:=1 to t do

if y[i]=min then for i:=i to t do

if y[i]=0 then k0:=k0+1;

writeln('количество нулів масиву після мінімального значення одно ',k0);

write;

write;

end;

end;

begin

vvod(5,A);

end.

Завдання 6.

Умова: Написати програму подсчитывающую у кожному з заданих рядків кількість слів `мама`.

Програма:

program S2_Z6;

type str=string[100]; ms=array[1..100] of str;

var A:ms;

procedure vvod(m:integer;var x:ms);

var i:integer;

begin

for i:=1 to m do begin writeln('введите ',i,'-ю рядок');

readln(A[i]);end; end;

procedure moped(m:integer;var x:ms);

var i,k:integer; st:str;

begin

for i:=1 to m do begin k:=0;

st:=A[i];

while pos('мама',st)<>0 do begin k:=k+1;delete(st,pos('мама',st),4); end;

writeln('кол-во слів мама в ',i,'-ой рядку ',k);end;end;

begin

vvod(5,A);

moped(5,A);

end.

Завдання 7.

Умова: Дан масив з 7 рядків, у кожному із котрих понад 50 відсотків елементів. Видалити з кожного рядка все прогалини та не записати кількість удалённых прогалин насамкінець цього рядка.

Програма:

program S2_Z7;

type s=string[50]; ms=array[1..100] of s;

var A:ms;

procedure vvod(m:integer;var x:ms);

var i:integer;

begin

for i:=1 to m do begin writeln('введите ',i,'-ю рядок');

readln(A[i]);end; end;

procedure prob(m:integer;var x:ms);

var i,k:integer;st,p:s;

begin

for i:=1 to m do begin

st:=x[i]; k:=0;

while pos(' ',st)<>0 do begin delete(st,pos(' ',st),1);k:=k+1;end;

str(k,p);

insert(p,st,length(st)+1); writeln(i,'-ая рядок:', st);end;

end;

begin

vvod(7,A);prob(7,A);

end.

Завдання 8.

Умова: У текстовому файлі відсортувати рядки зі збільшення їх довжин.

Прграмма:

program S2_Z8;

type ft=text; mas=array[1..100] of string;

var f1:ft;k,i,j:integer;s:string;A:mas;

procedure sozd(var f:ft;n:integer);

var i:integer; s:string;

begin assign(f,'c:.txt');rewrite (f);

for i:=1 to n do

begin writeln('введите ',i,'-ю строку');readln(s);

writeln(f,s);

end; close(f);

end;

procedure w(var f:ft);

var s:string;

begin writeln('измененный фаил матиме такий вигляд:');

reset(f);

while not eof(f) do begin readln(f,s); writeln(s)

end; close(f);

end;

begin writeln('введите у рядків файлі'); readln(k);

sozd(f1,k);

reset(f1);

while not eof(f1) do

begin for i:=1 to k do begin readln(f1,s); A[i]:=s;end;end;

for j:=1 to k do

for i:=1 to k do

if length(a[i])<length(a[i-1]) then begin

s:=a[i];a[i]:=a[i-1];a[i-1]:=s;end;

close(f1);

rewrite(f1);

for i:=1 to k do writeln(f1,a[i]);

close(f1);

w(f1);

end.

Завдання 9.

Умова: У файлі з речовинних чисел переставити елементи в такий спосіб, щоб спочатку було записано все позитивні, потім вони негативні, і потім все нулі.

Програма:

program S2_Z9;

type fi=file of integer; m=array[1..100] of integer;

var f1:fi;n:integer;

procedure vvod(n:integer;var f:fi);

var i,a:integer;

begin

assign (f,'c:f.int');

rewrite(f);

writeln('Введите компоненти файла');

for i:=1 to n do begin

read(a);write(f,a);end;

close (f);

end;

procedure sort(n:integer;var f:fi);

var buf:fi;s,i,j,k:integer; a:m;

begin

reset(f);

assign (buf,'c:buf.int');

rewrite(buf);

while not eof(f) do begin

for i:=1 to n do begin read(f,s); A[i]:=s;end;end;

for j:=1 to n do

for i:=1 to n do

if a[i]>a[i-1] then begin

s:=a[i];a[i]:=a[i-1];a[i-1]:=s;end;

k:=0;

for i:=1 to n do

if a[i]=0 then begin s:=a[i];a[i]:=a[n-k];a[n-k]:=s;k:=k+1;end;

for i:=1 to n do write(buf,a[i]);

close(buf);close(f);

erase(f);

rename(buf,'c:f.int');

end;

procedure w(var f:fi);

var a:integer;

begin

reset(f);

while not eof(f) do begin

read(f,a);write(a:4);end;

end;

begin

writeln('Задайте у компонентів файла');readln(n);

vvod(n,f1);

sort(n,f1);

w(f1);

write;

end.

Блок схема:

Завдання 10.

Умова: Записати насамкінець кожного рядка текстового файла кількість слів у цій рядки.

Програма:

program S2_Z10;

type ft=text; mas=array[1..100] of string;

var f1:ft;k:integer;

procedure sozd(var f:ft;n:integer);

var i:integer; s:string;

begin assign(f,'c:f.txt');rewrite (f);

for i:=1 to n do

begin writeln('введите ',i,'-ю строку');readln(s);

writeln(f,s);

end; close(f);

end;

procedure kslov(var f:ft);

var s,pk,p:string;k:integer; buf:ft;

begin

reset(f);

assign(buf,'c:buf.txt');

rewrite(buf);

while not eof(f) do begin k:=0;readln(f,s);

p:=s;

while pos(' ',p)>1 do begin k:=k+1; delete(p,1,pos(' ',p));end;

str(k,pk);insert(pk,s,length(s)+1); writeln(buf,s);end;

close(f); close(buf);

erase(f);

rename(buf,'c:f.txt');

end;

procedure w(var f:ft);

var s:string;

begin writeln('измененный фаил матиме такий вигляд:');

reset(f);

while not eof(f) do begin readln(f,s); writeln(s)

end; close(f);

end;

begin

writeln('введите у рядків файлі'); readln(k);

sozd(f1,k); kslov(f1);w(f1);

end.

Блок схема:

Схожі реферати:

  • Реферат на тему: 1С : Торгівля + склад
    Міністерство Шляхів Повідомлення Московський Державний Університеті Шляхів Повідомлення Інститут
  • Реферат на тему: 3D моделювання, анімація, віртуальні світи
    ВОРОНЕЖСКИЙ ДЕРЖАВНИЙ УНІВЕРСИТЕТ КАФЕДРА І.Т. і М.М.Э. 3D МОДЕЛИРОВАНИЕ. АНІМАЦІЯ. ВІРТУАЛЬНІ
  • Реферат на тему: Accent
    Многоязычный текстовий процесор Запровадження Практично кожен користувач комп'ютера
  • Реферат на тему: Addobe Page Maker
    року міністерство освіти України Автономної Республіки Крим Професійно-технічна училище №19
  • Реферат на тему: AutoCAD 2000
    СОДЕРЖАНИЕ Стр. ЗАВДАННЯ НА КУРСОВЕ ПРОЕКТИРОВАНИЕ ……………………….

Навігація