![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Прога процедурного типа
ANEM © (2006-11-07 21:29:00)Мы сейчас в институте проходим делфи,вот задали задачку,никак не могу понять,как решить.Подскажите,пожалуйста!
Составить процедуру,которая в символьной матрице S(l,q) определяет строки, не содержащие цифр и переписываетих в новую матрицу.Использовать процедуру для матриц Z(n,m) и C(i,j).Распечатать исходные и полученные матрицы.Если результирующая матрица пуста, то выдать соотв. текст.
Anatoly Podgoretsky (2006-11-09 18:52:00) [1]> iXT (09.11.2006 17:55:10) [10]
Не получим, Z не конвертируется
iXT (2006-11-09 17:55:00) [2]2 Anatoly Podgoretsky © (09.11.06 11:10) [9]
WMZ - это сформированный массив, пардон, символьный массив, из одной строки и трех столбцов. Если к нему применить Z или C, то возможно получим массив WMR. :)
Anatoly Podgoretsky (2006-11-09 11:10:00) [3]Насчет WMZ ты понял или нет.
ANEM (2006-11-09 11:08:00) [4]Затруднение в том,что я не знаю,как сформировать нужные массивы(с цифрами и без).
default (2006-11-08 00:15:00) [5]я понял задание
в чём затруднения?
Percent (2006-11-08 00:08:00) [6]Класс!
ANEM (2006-11-08 00:07:00) [7]Мы сейчас начали проходиьт программы процедурного типа.Вот что нам давали на семинарах:
program lesson;
{$APPTYPE CONSOLE}
uses
SysUtils;
type
Tmas=array[1..30]of string;
Procedure vvod(var s:Tmas;var k:integer);
var
i:integer;
begin
writeln('vvedite razmer massiva');
readln(k);
writeln('vvedite ',k,' strok');
for i:=1 to k do
readln(s[i]);
end;
{------------------}
procedure vivod(const s:Tmas;k:integer);
var
i:integer;
begin
writeln('massiv:');
for i:=1 to k do
writeln(s[i]);
readln;
end;
{--------------------}
Function minlen(var s:Tmas;k:integer):string;
var
i,n,min:integer;
begin
min:=length(s[1]);n:=1;
for i:=1 to k do
if length(s[i])<min then
begin
min:=length(s[i]);n:=i ;
end;
minlen:=s[n];
end;
{-------------------}
procedure sort(var s:Tmas;k:integer);
var
i,j:integer;buf:string;
begin
for i:=1 to k do
for J:=k downto i do
if s[j-1]>s[j] then
begin
buf:=s[j];
s[j]:=s[j-1];
s[j-1]:=buf;
end;
end;
{-------------------}
Function number(st:string;simbol:char):integer;
var
kol,i:integer;
begin
kol:=0;
for i:=1 to length(st) do
if st[i]=simbol then
kol:=kol+1;
number:=kol;
end;
{--------Program---------}
var
A:Tmas;n,k,k1:integer;s1:char;y:string;
begin
vvod(a,k);
vivod(a,k);
y:=minlen(a,k);
writeln('stroka minimalnoi dlyni');
writeln(y);
sort(a,k);
vivod(a,k);
n:=number(a[1],'2');
writeln('simvol 2 vxodit v 1 stroky ',n,' raz');
writeln('vvedite simvol');
readln(s1);
writeln('vvedite nomer stroki');
readln(k1);
n:=number(a[k1],s1);
writeln(n);
readln;
end.
Anatoly Podgoretsky (2006-11-07 23:33:00) [8]> ANEM (07.11.2006 21:29:00) [0]
Это задания, а условия?
Орион (2006-11-07 23:30:00) [9]фигасе у вас задачки в институте о.О :)
это... сколько WMZ?
Percent (2006-11-07 21:35:00) [10]Молодцы!
Virgo_Style (2006-11-07 21:34:00) [11]Ничего не могу подсказать, сам не понял, чего хотят