Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.05.2012, 20:41   #1
ProstoKuzia
 
Регистрация: 08.05.2012
Сообщений: 5
По умолчанию Нарисуйте блок-схемы к задачам.

Нарисуйте плз блок-схемы к задачам.

Условие 1:
Дан двумерный массив. Выдать номер строки, в которой находится
максимальное количество нулей. Результат запишите в файл.


Код программы:
program zadacha_2;
uses crt;
var
a: array [1..5, 1..5] of integer;
b: array [1..5] of integer;
i, j, k, z, z1, z2, max,l:integer;
r:file;
g:text;
begin
clrscr;
randomize;
for i := 1 to 3 do
for j := 1 to 3 do
a[i, j] := random(5);
for i := 1 to 3 do
begin
for j := 1 to 3 do
write(a[i, j]:3);
writeln
end;
z:=0;
z1:=0;
z2:=0;
for k:=1 to 3 do
if a[1,k]=0 then z:=z + 1;
for k:=1 to 3 do
if a[2,k]=0 then z1:=z1 +1;
for k:=1 to 3 do
if a[3,k]=0 then z2:=z2+1;
max := 0;
b[1]:=z;
b[2]:=z1;
b[3]:=z2;
for k:= 1 to 3 do
if b[k]>max then begin max := b[k];
l:=k;
end;
writeln('Nomer stroki s samim bolshim kol. nulej - ',l);
assign (r ,'O:\zadacha_2.txt');
rewrite(r);
assign (g,'O:\zadacha_2.txt');
rewrite(g);
writeln(g,l);
readkey;
close(r);
close(g);
end.

Условие 2:
Ввести фамилию, имя и отчество учащегося, разделенные пробелами.
Напишите программу, печатающую фамилию ученика и его инициалы.


Код программы:
program zadacha_3;
uses crt;
type cpicok=record
a:string;
b:string;
c:string;
e:string;
d:string;
i:integer;
end;
var f:cpicok;i:integer;
begin
clrscr;
writeln ('Vvedite familiu');
readln (f.a);
writeln ('Vvedite imia');
readln (f.b);
writeln ('Vvedite otchestvo');
readln (f.c);
clrscr;
write (f.a,' ');
write (f.b[1],'.');
write (f.c[1],'.');
writeln;
readkey;
end.


Условие 3:
Создать модуль U6, который содержит следующие функции:
a. Функция Рr(integer, integer), которая возвращает произведение всех чисел, которые лежат в заданном промежутке;
b. Процедуру U, которая увеличивает число на 5, если оно положительное, иначе уменьшает его на 3.
Написать программу, которая подключает разработанный модуль и демонстрирует работу функции и процедуры.


Код программы:
Unit u6;
Interface
function pr(a,b:integer):integer;
procedure u(var a:integer);
Implementation
function pr(a,b:integer):integer;
var p,i:integer;
Begin
p:=1;
For i:=a to b do
p:=p*i;
pr:=p;
End;
Procedure u(var a:integer);
Begin
if a > 0 then a:=a+5
else a:=a-3;
End;
End.

Uses u6,crt;
Var
a,b,k:integer;
Begin
clrscr;
writeln('Vvedite tri chesla:');
readln(a,b,k);
Writeln('Otvet:');
writeln(pr(a,b));
u(k);
writeln(k);
readln;
End.

Написать программу, которая печатает все перестановки чисел 1..n по одному разу используя рекурсивную функцию.
Блок схема:

Условие 4:
Написать программу, которая печатает все перестановки чисел 1..n по одному разу используя рекурсивную функцию.


Код программы:
program zadacha_5;
uses crt;
const n=4;
var a: array[1..n] of integer;
b: integer;
procedure gen(l,r:integer);
var i,v:integer;
begin
if (l=r) then begin
for i:=1 to n do write(a[i],' ');
writeln;
end else begin
for i := l to r do begin
v:=a[l]; a[l]:=a[i]; a[i]:=v;
gen(l+1,r);
v:=a[l]; a[l]:=a[i]; a[i]:=v;
end;
end;
end;
begin
for b:= 1 to N do A[b]:=b;
gen( 1,n );
readkey;
end.

Условие 5:
Создайте целочисленный массив А[1..15] с помощью генератора случайных чисел с элементами от –15 до 30 и выведите его на экран. Отсортировать по возрастанию методом «пузырька» и вывести полученный массив на экран.


Код программы:
uses crt;
Var a:array[1..15] of integer; i,j:integer;
buf:integer;
begin
clrscr;
randomize;
for i:=1 to 15 do
begin
a[i]:=random(30)-15;
write(a[i]:5);
end;
for i:=1 to 15-1 do
for j:=i+1 to 15 do
if a[i]>a[j] then
begin
buf:=a[i];
a[i]:=a[j];
a[j]:=buf;
end;
writeln;
writeln('Masiv posle sortirovki: ');
for i := 1 to 15 do
write(a[i]:5);
readln;
end.

Условие 6:
Нарисовать движущуюся фигуру с помощью модуля CRT. Движение осуществляется снизу вверх.


Код программы:
program elka;
uses crt,graph;
var
gd:integer;
gm:integer;
i,j:integer;
begin
gd:=Detect;
InitGraph(gd,gm,'egavka.bgi');
For j:=1 to 500 do
begin
SetColor(2);
line(500,400-j,450,450-j);
line(500,400-j,550,450-j);
line(450,450-j,550,450-j);
line(475,450-j,425,500-j);
line(525,450-j,575,500-j);
line(425,500-j,575,500-j);
line(450,500-j,400,550-j);
line(550,500-j,600,550-j);
line(400,550-j,600,550-j);
line(475,550-j,475,600-j);
line(525,550-j,525,600-j);
line(475,600-j,525,600-j);
delay(2000);
setColor(0);
line(500,400-j,450,450-j);
line(500,400-j,550,450-j);
line(450,450-j,550,450-j);
line(475,450-j,425,500-j);
line(525,450-j,575,500-j);
line(425,500-j,575,500-j);
line(450,500-j,400,550-j);
line(550,500-j,600,550-j);
line(400,550-j,600,550-j);
line(475,550-j,475,600-j);
line(525,550-j,525,600-j);
line(475,600-j,525,600-j);
end;
readln;
closegraph;
end.

Заране ооочень благодарен!
ProstoKuzia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Опытные люди, нарисуйте 2 блок схемы wwwmaster Помощь студентам 3 06.12.2011 14:54
Пожалуйсто нарисуйте маленькую блок-схему k3na4 Паскаль, Turbo Pascal, PascalABC.NET 0 15.05.2011 23:07
Проверьте пожалуйста блок-схемы к задачам.. nersafer Помощь студентам 0 16.12.2009 22:39
Нарисуйте блок-схему за деньги cHEg Фриланс 1 25.11.2008 18:15