Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

Народное голосование ПРЕМИИ РУНЕТА-2007!
Голосуем за RusFAQ.ru >>

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 480
от 06.11.2007, 15:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 239, Экспертов: 44
В номере:Вопросов: 2, Ответов: 3


Вопрос № 107545: Здравствуйте Уважаемые Господа! Я с Паскалем не работал, и мне нужна ваша помощь. Мне на поскале нужно сделать так чтобы километры переводила на миллиметры. Заранее спасибо!!...
Вопрос № 107557: Доброго времени суток! Требуется помощь в решении задачи такого вида: ОДА+ДА=МОДА, где каждая буква - одна цифра. разные буквы - разные цифры. Чисто в теории должен работать такой вариант решения, но не получается: program blablabla; ...

Вопрос № 107.545
Здравствуйте Уважаемые Господа!
Я с Паскалем не работал, и мне нужна ваша помощь.
Мне на поскале нужно сделать так чтобы километры переводила на миллиметры.
Заранее спасибо!!
Отправлен: 31.10.2007, 18:27
Вопрос задал: Мадрахимов Данияр Бахтиярович (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Pavl
Здравствуйте, Мадрахимов Данияр Бахтиярович!
1 км - это 1 000 000 мм.
Вот алгоритм.
writeln('Введите длину в километрах');
readln(a);
a:=a*1 000 000;
writeln(a);
Переменную a надо задать как переменную типа real.
Ответ отправил: Pavl (статус: 1-ый класс)
Ответ отправлен: 31.10.2007, 18:56

Отвечает: Форсман Павел Вячеславович
Здравствуйте, Мадрахимов Данияр Бахтиярович!

Текст!!!
Program T107545;
var
km,mm:Real;
begin
write('Введите число в километрах km=');
readln(km);
mm:=km*1000000;
writeln('В ',km:0:0,' километрах ',mm:0:0,' миллиметров.');
readln;
end.

---------
Научить нельзя, но можно попробовать научиться!!!
Ответ отправил: Форсман Павел Вячеславович (статус: 2-ой класс)
Ответ отправлен: 31.10.2007, 20:25


Вопрос № 107.557
Доброго времени суток! Требуется помощь в решении задачи такого вида: ОДА+ДА=МОДА, где каждая буква - одна цифра. разные буквы - разные цифры.
Чисто в теории должен работать такой вариант решения, но не получается:

program blablabla;
var m,o,d,a,x,y,z:word;
begin
for m:=1 to 9 do
begin for o:=1 to 9 do
begin for d:=1 to 9 do
begin for a:=0 to 9 do
begin if (o<>d)and(m<>a)and(o<>a)and(o<>m)and(m<>d)and(d<>a) then
begin x:=100*o+10*d+a;
y:=10*d+a;
z:=1000*m+100*o+10*d+a;
if x+y=z then writeln(x,'+',y,'=',z);
end; end; end; end; end; end.
Реализация нужна именно через цикл с параметром.

И еще вопросик: возможно ли в цикле с параметром реализовать увеличение не на 1, а на другое число, т.е. будет ли работать такая конструкция(например: надо найти сумму нечетных чисел, границы предела неважны):

for i:=1 to 99 do
begin s:=s+i;
i:=i+1; end;
Отправлен: 31.10.2007, 20:24
Вопрос задал: Work_stranger (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 4)

Отвечает: Verena
Здравствуйте, Work_stranger!
Ваш код вполне правильный, хоть это решение и не оптимальное. Только загвоздка в том, что ребус решения не имеет:
100о + 10 д + а + 10 д + а = 1000м + 100о + 10 д + а
10д + а = 1000м -> при обычных начальных условиях решения нет.
А по поводу цикла - ответ нет, в Паскале нельзя ни в коем случае менять значение параметра внутри цикла, поскольку как он, этот цикл, внутри устроен, мы как бы не знаем, и это может привести к непредсказуемому результату, например, к зацикливанию программы. Дело в том, что если крайнее значение параметра по каким-то причинам не будет получено, то цикл будет продолжать выполняться, сбросив параметр в минимальное значение типа integer.
Удачи!
---------
Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Студент)
Ответ отправлен: 31.10.2007, 22:14
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.61.1 от 16.10.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное