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

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

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

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



Сообщение: 2
ссылка на сообщение  Отправлено: 19.01.13 17:01. Заголовок: с4 (разобранные задачи из документа с4)


вопрос по задачам, которые разбирает К.Поляков в начале документа по с4.
первая задача.
счётчик C[k] := C[k] + 1;
Я не понимаю, как мы считаем именно те школы, от которых заявлен один участник. Ведь сам цикл оставляет нам только номер школы, а счётчик всегда
+ 1

К задаче два
1) var Info: array[1..LIM] of record
почему мы не можем написать var Info: array[10..LIM] of record ? (по условию "не меньше 10, но не>100"?)
или в массиве можно начинать только с первого элемента?
2) что означает переменная k?
почему так получается, что при k:=1 считывается фамилия, при k:=2 имя, при k 1,2,3 в след.цикле отметки ученика?
3)for k:=1 to 3 do begin
read(mark);

опять же.. как под одной переменной "mark" считывается первая, вторая и третья оценки ученика?
Извините, если непонятно где-то сформулировал вопрос.
и если где-то вопросы тупые.)

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 8 [только новые]


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




Сообщение: 445
ссылка на сообщение  Отправлено: 20.01.13 08:19. Заголовок: Дашкаа пишет: Я не п..


Дашкаа пишет:
 цитата:
Я не понимаю, как мы считаем именно те школы, от которых заявлен один участник.

После завершения чтения данных выполняется поиск минимального значения в массиве счетчиков C - так мы находим, какое минимальное количество участников было от одной школы. См п. 14 разбора.
 цитата:
почему мы не можем написать var Info: array[10..LIM] of record ? (по условию "не меньше 10, но не>100"?)

Представьте себе, что есть 10 учеников. А у вас только 1 элемент массива.
 цитата:
for k:=1 to 3 do begin read(mark); опять же.. как под одной переменной "mark" считывается первая, вторая и третья оценки ученика?

Никто не запрещает так делать - считывать несколько значений в одну и ту же переменную. Конечно, при каждом следующем чтении предыдущее значение затирается, но после этого стоит строка Info[i ].sum := Info[i ].sum + mark;, в которой значение mark добавляется к сумме, так что оно больше не нужно.

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



Сообщение: 3
ссылка на сообщение  Отправлено: 31.01.13 22:25. Заголовок: понятно) 1) зачем в ..


понятно)

1)а зачем в первой задаче последнее действие?
( for k:=1 to LIM do
if C[k] = Min then writeln(k);
)
почему нельзя сразу без него написать writeln(k)
2)
из учебника по программированию. почему перед end точка с запятой не ставится?




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




Сообщение: 455
ссылка на сообщение  Отправлено: 31.01.13 22:32. Заголовок: Дашкаа пишет: 1)а за..


Дашкаа пишет:
 цитата:
1)а зачем в первой задаче последнее действие? ( for k:=1 to LIM do if C[k] = Min then writeln(k); )

Нужно вывести только номера школ с минимальным количеством участников, а не все.
 цитата:
почему перед end точка с запятой не ставится?

Это язык Паскаль, там так.

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




Сообщение: 153
ссылка на сообщение  Отправлено: 01.02.13 13:56. Заголовок: Дашкаа пишет: почем..


Дашкаа пишет:

 цитата:
почему перед end точка с запятой не ставится?


можно ставить, а можно нет, ошибки не будет ни в том, ни в другом случае

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




Сообщение: 456
ссылка на сообщение  Отправлено: 01.02.13 14:09. Заголовок: oval пишет: можно ст..


oval пишет:
 цитата:
можно ставить, а можно нет

С точки зрения транслятора, точка с запятой в этом случае обозначает пустой оператор. См., например, К. Иенсен и Н. Вирт, "Паскаль. Руководство для пользователя" или здесь.

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



Сообщение: 4
ссылка на сообщение  Отправлено: 10.02.13 16:47. Заголовок: 1) решить задачу без..


1) решить задачу без использования оператора цикла

вот как я написала:
var street,s: string;
k: char;
begin
readln(s);
street:= Copy(s, Pos(' ', s)+1, Pos(' ', s)-1);
writeln (street) ;
end.

программа работает не всегда правильно


2)
как правильнее сделать задачу?
мой вариант:
var
s: string;
begin
read (s);
Delete(s,1,Pos(' ', s));
Delete(s,1,Pos(' ', s));
writeln(s);
end.


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




Сообщение: 160
ссылка на сообщение  Отправлено: 10.02.13 20:43. Заголовок: Дашкаа пишет: stre..


Дашкаа пишет:

 цитата:

street:= Copy(s, Pos(' ', s)+1, Pos(' ', s)-1);

программа работает не всегда работает правильно


функция pos находит первое вхождение подстроки в строку, т.е. если в названии компании 8 символов, то в название улицы копируется подстрока начиная с 9 символа длиной 7 символов
должно быть так:
Delete(s,1,Pos(' ', s)); // удалили название компании
street:= Copy(s, 1, Pos(' ', s)-1); // скопировали название улицы


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



Сообщение: 5
ссылка на сообщение  Отправлено: 12.02.13 21:34. Заголовок: oval спасибо:))..


oval спасибо:))

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

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