На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Не зарегистрирован
ссылка на сообщение  Отправлено: 09.02.12 12:43. Заголовок: Задача С2


Дан прямоугольный массив целых положительных чисел 10 х 20. Опишите на русском языке или на одном из языков программирования алгоритм поиска строки с наименьшей суммой элемен-тов. Вывести на печать номер строки и сумму ее элементов. Предполагается, что такая строка единственна.

Спасибо: 0 
Цитата Ответить
Ответов - 16 , стр: 1 2 All [только новые]


Администратор




Сообщение: 89
ссылка на сообщение  Отправлено: 09.02.12 13:01. Заголовок: Пожалуйста сформулир..


Пожалуйста сформулируйте вопрос.

___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 54
ссылка на сообщение  Отправлено: 20.05.12 11:42. Заголовок: Проверьте меня :sm12..


Проверьте меня


const N=10;
const M=20;
var a:array[1..N,1..M] of integer;
min, sum, i, k, g, t, stroka:integer;
begin
{вводим массив N x M}
sum:=0;
for i:=1 to M do
sum:=sum+a[1,i]; {сумма элементов первой строки}
for g:=2 to N do
for t:=1 to M do
while g<>g+1 do {-------------- вот тут не уверен, будет ли программа полностью все строки проверять или же остановится на проверке одной заданной строки}
k:=a[g,t]+k;
if k<sum then
begin
sum:=k;
stroka:=g;
end;
writeln(stroka);
writeln(sum);
end.

Ирочка 228 Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Сообщение: 80
ссылка на сообщение  Отправлено: 20.05.12 11:51. Заголовок: 1ро4ка_двадва88 пише..


1ро4ка_двадва88 пишет:

 цитата:
g<>g+1

при каком g это условие станет ложным?

 цитата:
for g:=2 to N do
for t:=1 to M do
while g<>g+1 do
k:=a[g,t]+k;


в k будет записана сумма всех элементов массива со 2 строки по N
я бы оценила это решение в 0 баллов
 
for g:=2 to N do
begin
for t:=1 to M do
while g<>g+1 do
k:=a[g,t]+k;
if k<sum then
begin
sum:=k;
stroka:=g;
nd;
end;


Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 55
ссылка на сообщение  Отправлено: 20.05.12 12:02. Заголовок: Понял, спасибо. Но, ..


Понял, спасибо. Но, насколько я могу анализировать ситуацию с егэ 2012, задач на двумерные массивы не будет. Вообще, очень странная ситуация сложилась в этом году. Пришел какой то http://www.youtube.com/watch?v=nyClYuq3_9Q на место куратора ЕГЭ по информатике, перевернул все с ног на голову, никаких пособий для подготовки к экзамену не выпустил, из того что мы имеем на данный момент (за неделю до экзамена) есть всего лишь 1 демо работа и 1 тренировочная, по которым можно только догадываться, что же будет ждать школоло 28 мая

Ирочка 228 Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 18
ссылка на сообщение  Отправлено: 26.05.12 00:56. Заголовок: C2 30 min:=1000; fo..


C2 30

min:=1000;
for i:=1 to N do begin
if (A<min) and ((A>=100) and (A<=999)) then begin
min:=A;
writeln(min); end
else writeln('Нету трехзначных чисел');
end.
Правильно?В ответах немного по-другому.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Сообщение: 118
ссылка на сообщение  Отправлено: 26.05.12 09:47. Заголовок: Viken пишет: min:=..


Viken пишет:

 цитата:
 
min:=1000;
for i:=1 to N do begin
if (A[ i]<min) and ((A[ i]>=100) and (A[ i]<=999)) then begin
min:=A[ i];
if min<> 1000 then
writeln(min); end
else writeln('Нету трехзначных чисел');
end.


вы свою программу запустите, забавные вещи она будет выдавать :)
если очередное число меньше минимума, то мы его печатаем, а иначе печатаем нет трехзначных чисел, я думаю это решение 0 баллав

 цитата:
Почему min:=9999(или другое любое число,вне данного диапазона),а не min:=1000?

потому-что 9999 и есть любое число

 цитата:
С2 27
.............


а какое отношение это имеет к 27 задаче? видимо в 4 утра лучше спать



Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 19
ссылка на сообщение  Отправлено: 26.05.12 01:23. Заголовок: C2 28 Почему min:=9..


C2 28

Почему min:=9999(или другое любое число,вне данного диапазона),а не min:=1000?

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 20
ссылка на сообщение  Отправлено: 26.05.12 01:34. Заголовок: С2 27 a>=0 не б..


С2 27

a>=0 не будет же считаться за ошибку?в ответах стоит знак ">"

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 21
ссылка на сообщение  Отправлено: 26.05.12 03:02. Заголовок: С2 27 min:=999 for ..


С2 25

min:=999
for i:=1 to N do
if (a>=0) and (a<=10000) and (a>=100) and (a<=min) then
min:=a;
writeln(min)
else writeln('Таких чисел нет');
end.
Правильно?В ответах по-другому немного.

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 128
ссылка на сообщение  Отправлено: 26.05.12 16:13. Заголовок: Viken пишет: С2 25 ..


Viken пишет:

 цитата:
С2 25

min:=999
for i:=1 to N do
if (a>=0) and (a<=10000) and (a>=100) and (a<=min) then
min:=a;
writeln(min)
else writeln('Таких чисел нет');
end.
Правильно?В ответах по-другому немного.


условия, выделенные жирным проверять не надо. изначально вы задали в минимум наибольшее трехзначное число - это неправильно. 999 может быть числом, которое мы ищем, а у вас оно заведомо отбрасывается.
нет, у вас оно получает ПРИОРИТЕТ во всей программе, т.к если последный встретившийся 3-х значный элемент будет 999, то он и будет минимумом - ошибка

Ирочка 228 Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Сообщение: 122
ссылка на сообщение  Отправлено: 26.05.12 18:17. Заголовок: Viken пишет: for i:..


Viken пишет:

 цитата:
for i:=1 to N do
if (a>=0) and (a<=10000) and (a>=100) and (a<=min) then
min:=a;
writeln(min)
else writeln('Таких чисел нет');
end.


для начала, программа не от компилируется, прежде чем писать сюда попробуйте прогнать ее на компьютере

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 26.05.12 18:38. Заголовок: Не знаю, можно ли зд..


Не знаю, можно ли здесь размещать ссылки.
Тут есть несколько тренировочных и диагностических работ за 2012 год:
http://www.alleng.ru/d/comp/com_ege-tr.htm

Простите меня, если что, Константин Юрьевич :)


Спасибо: 0 
Цитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 27.05.12 17:08. Заголовок: С2 26 Можно ли было..


С2 26

Можно ли было в этой задаче вместо такой проверки (из ответов):

 цитата:
for j:=1 to a[i] do
if a[i] mod j = 0 then k:= k + 1;


сделать такую:
for j:=1 to 10 do
if a[i] mod j = 0 then k:= k + 1;

Нужно ли в решении приводить математическое доказательство или писать какой-нибудь комментарий?


Спасибо: 0 
Цитата Ответить
Администратор




Сообщение: 363
ссылка на сообщение  Отправлено: 27.05.12 17:28. Заголовок: Ксения пишет: сделат..


Ксения пишет:
 цитата:
сделать такую: for j:=1 to 10 do if a mod j = 0 then k:= k + 1;

Да, учитывая, что все значения не больше 100.

 цитата:
Нужно ли в решении приводить математическое доказательство или писать какой-нибудь комментарий?

Вообще говоря, не обязательно. Но, возможно, это облегчит эксперту понимание вашей мысли.

___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 27.05.12 17:11. Заголовок: ребят как правильней..


ребят как правильней оформлять с2?:
1)k:=0;
for i:=1 to N do begin
if (10<=a[i]) and (a[i]<=99) and
((a[i] mod 10 = 9) or (a[i] div 10=9)) then k:=k+1;
end;
writeln(k);

или

2)k:=0;
for i:=1 to N do
if (10<=a[i]) and (a[i]<=99) and
((a[i] mod 10 = 9) or (a[i] div 10=9)) then k:=k+1;
writeln(k);

при вот таком условии:Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм, позволяющий найти и вывести количество элементов массива, десятичная запись которых содержит ровно 2 цифры, причём хотя бы одна из этих цифр – цифра 9..

Спасибо: 0 
Цитата Ответить
постоянный участник




Сообщение: 130
ссылка на сообщение  Отправлено: 27.05.12 18:51. Заголовок: Den пишет: ребят ка..


Den пишет:

 цитата:
ребят как правильней оформлять с2?:


абсолютно все равно, по синтаксису после do может стоять один оператор, это if , а взяли вы его в операторные скобки или нет роли не играет, другое дело если по логике программы нам необходимо после do сделать два действия, например, что-то вычислить и напечатать, тогда begin - end обязательны

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 16 , стр: 1 2 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 2336
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет