Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Задача с матрицей

Автор: Олень 16.12.2007 3:31

Заполнить матрицу с помощью генератора случайных чисел. Ввести элемент с клавиатуры и удалить строки, где встречается такой же элемент. Предусмотреть искл. Ситуации. СПС заранее

Автор: Client 16.12.2007 12:35

Смотри в FAQ'е, там все есть

Автор: alter 16.12.2007 16:10

тока мну нельзя использовать функции и процедуры. вот что йа смог сделать(*.pas)


Прикрепленные файлы
Прикрепленный файл  RAB6.PAS ( 1.01 килобайт ) Кол-во скачиваний: 197

Автор: alter 17.12.2007 1:15

помогите плз!!!!!!

Автор: nopsrer 17.12.2007 1:49

uses crt;
const
n=10; m=10;
var t,i,j,ch,k: integer;
mas,nmas: array [1..100,1..100] of integer;
mas2: array[1..100] of boolean;
begin
clrscr;
randomize;
for i:=1 to n do
for j:=1 to m do
mas[i,j]:=random(100);
writeln('Vvedite chislo');
readln(ch);
for i:=1 to n do
for j:=1 to m do
if mas[i,j]=ch then mas2[i]:=true;
t:=0;

for i:=1 to n do begin
if mas2[i]=false then begin t:=t+1;
for k:=1 to m do
nmas[t,k]:=mas[i,k]; end;
end;
writeln('ORIGINAL masiv');
for i:=1 to n do begin
for j:=1 to m do
write(mas[i,j],' ');
writeln;
end;
writeln('NEW masiv');
for i:=1 to t do begin
for j:=1 to m do
write(nmas[i,j],' ');
writeln;
end;
readln;
end.

Автор: alter 17.12.2007 22:35

Цитата(nopsrer @ 16.12.2007 21:49) *

uses crt;
const
n=10; m=10;
var t,i,j,ch,k: integer;
mas,nmas: array [1..100,1..100] of integer;
mas2: array[1..100] of boolean;
begin
clrscr;
randomize;
for i:=1 to n do
for j:=1 to m do
mas[i,j]:=random(100);
writeln('Vvedite chislo');
readln(ch);
for i:=1 to n do
for j:=1 to m do
if mas[i,j]=ch then mas2[i]:=true;
t:=0;

for i:=1 to n do begin
if mas2[i]=false then begin t:=t+1;
for k:=1 to m do
nmas[t,k]:=mas[i,k]; end;
end;
writeln('ORIGINAL masiv');
for i:=1 to n do begin
for j:=1 to m do
write(mas[i,j],' ');
writeln;
end;
writeln('NEW masiv');
for i:=1 to t do begin
for j:=1 to m do
write(nmas[i,j],' ');
writeln;
end;
readln;
end.


спс огромное!

Автор: alter 20.12.2007 23:18

а можно все сделать в одном массиве?и без массива типа булен?

Автор: volvo 21.12.2007 1:22

Цитата
можно все сделать в одном массиве?и без массива типа булен?

Можно:
uses crt;

const
n: integer = 10;
m = 10;

var
i, j, k, ch: integer;
mas: array[1 .. 100, 1 .. 100] of integer;
found: boolean;

begin
clrscr;
randomize;
for i:=1 to n do
for j:=1 to m do mas[i,j]:=random(100);

writeln('ORIGINAL masiv');
for i:=1 to n do begin
for j:=1 to m do
write(mas[i,j]:4);
writeln;
end;


writeln('Vvedite chislo');
readln(ch);

i := 1;
while i <= n do begin
found := false;
for j := 1 to m do
if mas[i, j] = ch then found := true;

if found then begin
for j := 1 to m do
for k := i to n - 1 do mas[k, j] := mas[k + 1, j];
dec(n);
end
else inc(i);
end;

writeln('NEW masiv');
for i:=1 to n do begin
for j:=1 to m do
write(mas[i,j]:4);
writeln;
end;
readln;
end.

Автор: alter 21.12.2007 2:13

СПС!
зы почему йа не могу плюс в репутацию поставить никому?

Автор: volvo 21.12.2007 2:20

Еще 2 сообщения и сможешь smile.gif