Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 28.05.2012, 18:25   #1 (permalink)
Altana
Member
 
Аватар для Altana
 
Регистрация: 12.04.2012
Сообщений: 28
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Листинг, программа №2

Помогите пожалуйста написать комментарии к каждой команде)
Дан двумерный массив "А". Пользователь вводит число. Если это число больше первой цифры из столбца, то этот столбец удаляется..


Program pr1;
Uses CRT;
Const N=5;
Const M=5;
var A:array[1..N,1..M] of integer;
s,i,j,k,p,t,z:integer;

Begin
s:=M;
ClrScr;
For i:=1 to N do
For j:=1 to M do A[i,j]:=random(20);
For i:=1 to N do begin
For j:=1 to M do write(A[i,j]:3);
Writeln;
End;



Writeln('vvedite chislo');
Readln(z);

j:=1;
While j<=S do
If A[1,j]>z then
begin
For t:=1 to N do
For p:=j to S-1 do
A[t,p]:=A[t,p+1];
S:=S-1;
end
else j:=j+1;

If k=s then write('vse ctolbci ydaleni') else
writeln;
For i:=1 to N do begin
For j:=1 to S do write(A[i,j]:3);
Writeln;
end;

Readln;
end.
Altana вне форума   Ответить с цитированием

Старый 28.05.2012, 18:25
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Эти ссылки могут быть вам полезны, обратите внимание

Программа на Си
Нужен листинг программы и блок-схема
Листинг, программа

Старый 28.05.2012, 19:06   #2 (permalink)
Altana
Member
 
Аватар для Altana
 
Регистрация: 12.04.2012
Сообщений: 28
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

После readln(z);
Вот с этого момента пожалуйста
Altana вне форума   Ответить с цитированием
Старый 28.05.2012, 19:35   #3 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Прежде всего, программу нужно доделать. Где у Вас определено исходное значение переменной k? Не вижу такого. Да и зачем оно вообще нужно? Почему бы не поставить вместо
If k=s then
условие
If S=0 then ? И не надо никакого k вовсе. Между прочим, вводить переменную S тоже большой нужды нет: после ввода значений матрицы и вывода ее на экран исходное значение M больше не нужно, и можно работать прямо с ним. Но это так, к слову.
P.S. А, нет - прошу прощения, недосмотрел - у Вас же М - константа. Тогда с S всё правильно. Виноват-с.
Vladimir_S вне форума   Ответить с цитированием
Старый 28.05.2012, 19:58   #4 (permalink)
Altana
Member
 
Аватар для Altana
 
Регистрация: 12.04.2012
Сообщений: 28
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

If S=0 then write('vse ctolbci ydaleni') else
writeln;
For i:=1 to N do begin
For j:=1 to S do write(A[i,j]:3);
Writeln;
end;

спасибо, исправлено)
Altana вне форума   Ответить с цитированием
Старый 29.05.2012, 12:26   #5 (permalink)
Altana
Member
 
Аватар для Altana
 
Регистрация: 12.04.2012
Сообщений: 28
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

will you help, please? комментарии...
Altana вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 29.05.2012, 12:51   #6 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Altana Посмотреть сообщение
will you help, please?
Maybe you'll ask the concrete questions? For the each line commenting is too long and dull...
Vladimir_S вне форума   Ответить с цитированием
Старый 29.05.2012, 12:59   #7 (permalink)
Altana
Member
 
Аватар для Altana
 
Регистрация: 12.04.2012
Сообщений: 28
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

no problems Only this part, please..
For t:=1 to N do
For p:=j to S-1 do
A[t,p]:=A[t,p+1];
S:=S-1;
end
else j:=j+1;

и для чего вводится переменные t and p?
Altana вне форума   Ответить с цитированием
Старый 29.05.2012, 14:22   #8 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Altana Посмотреть сообщение
и для чего вводится переменные t and p?
Это Вы у МЕНЯ спрашиваете? Но... это не моя программа. Впрочем, отвечу. Переменная t вводится для балды, никакого смысла ее введение не имеет, вполне можно обойтись той же i. Другое дело p. Эта нужна. Ведь переменная j занята: это номер столбца, подлежащего изничтожению, и пока происходит сдвиг значений элементов матрицы, трогать ее нельзя. Вот и приходится вводить другую, вспомогательную переменную.
Vladimir_S вне форума   Ответить с цитированием
Старый 29.05.2012, 15:47   #9 (permalink)
Altana
Member
 
Аватар для Altana
 
Регистрация: 12.04.2012
Сообщений: 28
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

ясен) спасибо))
Altana вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 14:10.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.