Выпуск № 919 от 24.06.2009, 16:35
Администратор рассылки: Калашников О.А., Руководитель
В рассылке: подписчиков - 339, экспертов - 154
В номере: вопросов - 5, ответов - 7
Нам очень важно Ваше мнение об этом выпуске рассылки. Вы можете оценить этот выпуск по пятибалльной шкале, пройдя по ссылке: оценить выпуск >>
Вопрос № 169594: Помогите пожалуйста с задачкой!!! Дан текст. Определить, содержит ли он символы, отличные от букв и пробела....
Вопрос № 169596: Здравствуйте дорогие эксперты, вот сидел решал задачу, но она до конца не получается, и преподаватель не принимает ее. Подскажите что не так и как это исправить. За ранее спасибо) А. Создать файл, содержащий сведения о количестве изделий, соб...
Вопрос № 169600: Уважаемые эксперты помогите написать программы: 1) Написать функцию для преобразования строки в число (целое) используя ord. ord - выражает порядковый номер элемента (его цифровой код) 2) написать функцию которая находит число букв "о&...
Вопрос № 169613: Доброго времени суток уважаемые эксперты, помогите пожалуйта решить задачу (см приложение). Если у кого есть возможность - решите пожалуйста, очень нужно в ближайший час решение....
Вопрос № 169607: Уважаемые эксперты, подскажите, как можно в линейном динамическом списке, состоящем из нулей, единиц и двоек, стоящих в различной последовательности, расставить по возрастанию не применяя сортировку? ...
Вопрос № 169594:
Помогите пожалуйста с задачкой!!! Дан текст. Определить, содержит ли он символы, отличные от букв и пробела.
Отправлен: 19.06.2009, 09:04
Вопрос задал: Savie, Посетитель
Всего ответов: 1 Страница вопроса >>
Отвечает Botsman, Специалист :
Здравствуйте, Savie. В приложении - код программы, рассчитанной на латинский алфавит. При необходимости дополните константу possibleSymbols требуемыми символами. Рад был помочь.
Приложение:
----- Хочешь победить Excel? Спроси меня как! ;)
Ответ отправил: Botsman, Специалист
Ответ отправлен: 19.06.2009, 11:26
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251192
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169596:
Здравствуйте дорогие эксперты, вот сидел решал задачу, но она до конца не получается, и преподаватель не принимает ее. Подскажите что не так и как это исправить. За ранее спасибо)
А. Создать файл, содержащий сведения о количестве изделий, собранных сборщиками цеха за неделю. Каждая запись содержит поля: фамилия сборщика, количество изделий, собранных им ежедневно в течение шестидневной недели, т.е. раздельно в понедельник, вторник и т. д. Количество записей — произвольное.
Б. Написать программу,
выводящую в текстовый файл следующую информацию: - фамилию сборщика и общее количество деталей, собранное им за неделю; - фамилию сборщика, собравшего наибольшее число изделий, и день, когда он достиг наивысшей производительности труда
Отвечает _Ayl_, 7-й класс :
Здравствуйте, Иванов Виктор Олегович.
Ну, в вашей программе первые 2 задания сделаны, проблема в третьем. Собственно, у вас ошибка при поиске лучшего сборщика. Вы выводите первого попавшегося вместо того, чтобы организовать сначала поиск, а потом уже выбор найденного. Во-вторых, для него вам нужно вывести не общее число собранных деталей за неделю, а день, в который он изготовил наибольшее число деталей. То есть требуется еще один поиск уже внутри записи. В-третьих, вы внесли оператор закрытия
файла внутрь цикла, что приводит к ошибке попытки записи в закрытый файл.
Еще пара штрихов. Зачем указан полный путь к выходному файлу? Просто имени файла не достаточно? Он тогда будет создан в текущей директории. Зачем вы используете одновременно операторы reset (f) и append (f)? Append'а вполне достаточно. Неудачно выбрана структура для описания сборщика. Из-за этого пришлось расписывать поиск лучшего дня на отдельные сравнения, хотя можно испол
ьзовать цикл. Лучшей выбор - это массив из 6-ти или 7-ми элементов для описание недельной производительности. Тогда, если еще ввести массив названий дней недели, то можно упростить и ввод данных. Также у меня подозрение, что в части А предполагается формирование типизированного файла, а не текстового.
В приложении ваш поправленный код.
Приложение:
Ответ отправил: _Ayl_, 7-й класс
Ответ отправлен: 19.06.2009, 17:02
Оценка ответа: 5 Комментарий к оценке: Огромное спасибо :)
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251209
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169600:
Уважаемые эксперты помогите написать программы: 1) Написать функцию для преобразования строки в число (целое) используя ord. ord - выражает порядковый номер элемента (его цифровой код) 2) написать функцию которая находит число букв "о" в предложении. 3)Составить процедуру для вывода двумерного масива на экран и генерация массива вида: 4321 3000 2200 1110
4)Дана строка S перевернуть все слова в ней, при этом последовательность этих слов не должна изменьяться
Оценка ответа: 5 Комментарий к оценке: Большое спасибо
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251195
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает Sky-er, 3-й класс :
Здравствуйте, Sirbesh. Сделал процедуру для 4 задания
Исправлено по просьбе автора ответа.
-----
∙ Отредактировал: Зенченко Константин Николаевич, Модератор
∙ Дата редактирования: 19.06.2009, 23:57 (время московское)
Приложение:
Ответ отправил: Sky-er, 3-й класс
Ответ отправлен: 19.06.2009, 12:37
Оценка ответа: 5 Комментарий к оценке: Спасибо!
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251197
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169613:
Доброго времени суток уважаемые эксперты, помогите пожалуйта решить задачу (см приложение). Если у кого есть возможность - решите пожалуйста, очень нужно в ближайший час решение.
Оценка ответа: 5 Комментарий к оценке: Огромное спасибо!!!
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251207
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169607:
Уважаемые эксперты, подскажите, как можно в линейном динамическом списке, состоящем из нулей, единиц и двоек, стоящих в различной последовательности, расставить по возрастанию не применяя сортировку?
Отвечает _Ayl_, 7-й класс :
Здравствуйте, Egbert26.
Все правильно пишешь. Нужно сосчитать количество 0, 1 и 2. После этого идешь по своему списку и изменяешь значения соответствующим образом. В приложении - код для решения задания.
Приложение:
Ответ отправил: _Ayl_, 7-й класс
Ответ отправлен: 19.06.2009, 13:27
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 251201
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
{
Итератор для списка } TIterator=object private current:PNode; { Конструктор } constructor Init(node:PNode); public { Если достигнут конец списка то true } function IsEndList: Boolean; { Возвращает значение } function GetValue: TData; { Устанавливает новое значение } procedure SetValue(value: TData); { На следующий узел } procedure GoNext; end;
{ Список } TList=object priva
te head:PNode; public { Конструктор } constructor Init; { Деструктор } destructor Done; virtual; { Добавляет данные к списку } procedure Add(value: TData); { Итератор на начало списка } procedure GetBeginIterator(var iterator: TIterator); end;
procedure TList.Add(value: TData); var node:PNode; begin new(node); node^.data:=value; node^.next:=head; head:=node; end;
procedure TList.GetBeginIterator(var iterator: TIterator); begin iterator.Init(head); end;
destructor
TList.Done; var node:PNode; begin while head<>nil do begin node:=head; head:=head^.next; dispose(node); end; end;
constructor TList.Init; begin head:=nil; end;
function TIterator.GetValue: TData; begin GetValue:=current^.data; end;
procedure TIterator.GoNext; begin current:=current^.next; end;
constructor T
Iterator.Init(node:PNode); begin current:=node; end;
function TIterator.IsEndList: Boolean; begin IsEndList:=current=nil; end;
procedure TIterator.SetValue(value: TData); begin current^.data:=value; end;
{ Выводит список на экран } procedure PrintList(msg:String;list:TList); var it:TIterator; begin WriteLn(msg); list.GetBeginIterator(it); while not it.IsEndList do begin Write(it.GetValue,' '); it.GoNext; end; WriteLn; end;
{
Сортирует согдасно условия } procedure Solve(list:TList); type TCountersArray=array[0..MaxData] of Integer; var counters:TCountersArray; it:TIterator; i:TData; begin for i := 0 to MaxData do begin counters[i]:=0; end; list.GetBeginIterator(it); while not it.IsEndList do begin Inc(counters[it.GetValue]); it.GoNext; end; list.GetBeginIterator(it); for i := 0 to MaxData do begi
n while counters[i]>0 do begin it.SetValue(i); Dec(counters[i]); it.GoNext; end; end; end;
const itemsNumber=20;
var list:TList; i:Integer;
begin list.Init; Randomize; for i := 1 to itemsNumber do begin list.Add(Random(MaxData+1)); end; PrintList('List:',list); Solve(list); PrintList('Sorted List:',list); list.Done; ReadLn; end.
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.