IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Двухмерный символьный массив. Вывод различающихся столбцов.
сообщение
Сообщение #1


голодный(
*

Группа: Пользователи
Сообщений: 14
Пол: Мужской

Репутация: -  0  +


Здравствуйте, помогите пожалуйста с программой.
----------------------------------------------------------------
Задача:
Напечатать последовательно все различающиеся между собой столбцы символьной матрицы.
Мое решение:

program simv_massive;
uses crt;
const str=30;
stp=40;
type MyArr=array[1..str,1..stp] of char;
MyArrSp=array[1..str] of char;
var mas:MyArr;
x:MyArrSp;
i,j,k,n,m:byte;
num:integer;

procedure Matr_In(var mas1:MyArr; n1,m1:byte);
var
i,j:byte;
begin
for i:=1 to n1 do
begin
for j:=1 to m1 do
read(mas1[i,j]);
readln;
end;
end;

procedure Matr_Out(var mas2:MyArr; n2,m2:byte);
var
i,j:byte;
begin
for i:=1 to n2 do
begin
for j:=1 to m2 do
write(mas2[i,j]:5);
writeln;
end;
end;

begin
clrscr;
Write('Введите количество строк:');
Readln(n);
Write('Введите количество столбцов:');
Readln(m);
Writeln('Заполните массив');
Matr_In(mas,n,m);
Writeln('Вы ввели массив');
Matr_Out(mas,n,m);

for j:=1 to m do
begin
num:=0;
for i:=1 to n do
if mas[i,j]=x[i] then
num:=num+1;

if num<>n then
for i:=1 to n do
writeln(mas[i,j]);

for i:=1 to n do
x[i]:=mas[i,j];
end;
writeln;
readkey
end.


Начну сначала, подскажите вывести столбцы последовательно это так
Цитата
2 5 5
2 5 6
2 5 8

или можно и так
Цитата
2
2
2

5
5
5
...

моя программа естественно выводит во втором варианте...
-------------------------------------
дальше, у меня она не выводит одинаковые столбцы если только одинаковые столбцы идут друг за другом, подскажите пожалуйста как сделать чтобы работала полноценно.
буду очень благодарен smile.gif
-------------------------------------
приветствуется критика по поводу процедур ввода вывода массива
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Sum42   Двухмерный символьный массив. Вывод различающихся столбцов.   19.10.2010 0:45
Client   надо проверить элементы столбца с элементами всех …   19.10.2010 0:54
Client   uses crt; const str=10; stp=10; type M…   19.10.2010 1:55
Sum42   Client Большое спасибо за помощь, сейчас постараю…   19.10.2010 23:33
Lapp   Я тип множества еще не знаю, сейчас буду "узн…   20.10.2010 7:26
мисс_граффити   - не надо подавать новичкам дурной пример постоян…   20.10.2010 12:22
Lapp   имхо, он засунут ради очистки экрана.... что само …   20.10.2010 14:08
Client   а мне надо чуть меньше действий :) if flag then …   20.10.2010 12:58
Sum42   Lapp Большое спасибо за помощь, сейчас буду разбир…   20.10.2010 23:31
Sum42   Lapp Разбираю ваш код Вроде где-то не совсем прав…   21.10.2010 0:22
Lapp   в первой строчке fi] а не fj]?Да, конечно )). Изв…   21.10.2010 3:02
Client   for i:=1 to m do if f i ] thenпопробуй так   21.10.2010 1:55
Sum42   RE: Двухмерный символьный массив. Вывод различающихся столбцов.   21.10.2010 22:49
Lapp   ну я вроде ответил вышеА, понятно, извини. Потеря…   22.10.2010 3:55


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 2.05.2024 5:53
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name