IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Программирование циклов с параметрами, Проверка задачки
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Всем привет. Задание такое: найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8,9.

Program st;
uses crt;
function Summ(n:integer):byte;
var s:byte;
begin
s:=0;
while n>0 do
begin
s:=s+n mod 10;
n:=n div 10;
end;
Summ:=s;
end;
var i,j:integer;
begin
clrscr;
for i:=2 to 9 do
begin
writeln('*',i);
for j:=10 to 99 do
if Summ(j)=Summ(j*i) then
write(j,'-',i*j,' ');
writeln;
end;
readln;
end.



Задачка не запускается, выдает ошибки. Посмотрите пожалуйста, подскажите что исправить.


Добавлено через 4 мин.
Ссылается на строку function
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Уважаемые форумчане, вопрос еще в силе.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Не компилируется что ли?
Не знаю, у меня всё заработало.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


TarasBer, ты ведь наверняка делал какие-то мелкие поправки в задаче. Можешь выложить сюда свою версию это программы?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +



Program st;
{$APPTYPE CONSOLE}
function Summ(n:integer):byte;
var s:byte;
begin
s:=0;
while n>0 do
begin
s:=s+n mod 10;
n:=n div 10;
end;
Summ:=s;
end;
var i,j:integer;
begin
for i:=2 to 9 do begin
writeln('*',i);
for j:=10 to 99 do
if Summ(j)=Summ(j*i) then
write(j,'-',i*j,' ');
writeln;
writeln;
end;
readln;
end.



Это для D7. Для Турбо надо убрать строчку {$APPTYPE CONSOLE}


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Спасибо, теперь работает. Сейчас ошибку буду у себя искать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Я только убрал uses Crt (в дельфе этого модуля нет), строчку с функцией не трогал, почему твой первый вариант не работал - не знаю.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Ошибка была в написании команды function. Букву пропустил, из-за этого и весь кипишь. smile.gif

Сообщение отредактировано: Stas86 -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Однако, здесь, в первом посте, все правильно. Почему не копируешь программу, а перенабиваешь ее здесь?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Да нет, на форум программу занес копированием. А в паскале каким-то образом ошибка была.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Парни, приветствую. Подскажите, а как данная задача будет выглядеть без строки function. Преподша сказала, якобы функции мы не проходили, говорит или переделывай или объясняй.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


> или переделывай или объясняй.

Выбирай "объясняй".
Объяснить-то сможешь же? Ну так какие проблемы?



--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Объяснить? Нет, такое у меня не получится. Не силен я в этом деле.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Народ, помогите в данном вопросе.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

Репутация: -  20  +


просто жесть! пойду повешусь
Program st;
{$APPTYPE CONSOLE}

var i,j:integer;
MyS1, MyS2, s : integer;
i1, j1 : integer;

begin
for i:=2 to 9 do begin
writeln('*',i);
for j:=10 to 99 do begin
MyS1:=0;
j1 := j;
while j1>0 do
begin
MyS1:=MyS1+j1 mod 10;
j1:=j1 div 10;
end;

MyS2:=0;
i1 := j*i;
while i1>0 do
begin
MyS2:=MyS2+i1 mod 10;
i1:=i1 div 10;
end;

if MyS1 = MyS2 then
write(j,'-',i*j,' ');
end;
writeln;
writeln;
end;
readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #16


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: Стас

Репутация: -  0  +


Огромное спасибо!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #17


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Просто чуток покороче..
var
i,j,k,l: integer;

begin
for k:=2 to 9 do begin
Write(k,':');
for i:=1 to 9 do
for j:=0 to 9 do begin
l:=(i*10+j)*k;
if l mod 10+l div 10 mod 10+l div 100=i+j then Write(' ',i,j,'~',l)
end;
WriteLn
end;
ReadLn
end.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 23.04.2024 21:47
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name