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

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

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

2 страниц V < 1 2  
 Ответить  Открыть новую тему 
> Задача о сумме четных чисел.
сообщение
Сообщение #21


Гость






Цитата
т.е. если я ввожу 24066 - мне выводило сумму 6 а не 18 !!!
А ты не в курсе, что сумма считается с младших, а не со старших разрядов, то есть "до нуля" - будет 6+6 = 12, а не 2+4 = 6

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #22





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

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


Цитата(volvo @ 17.11.2007 20:48) *
А ты не в курсе, что сумма считается с младших, а не со старших разрядов, то есть "до нуля" - будет 6+6 = 12, а не 2+4 = 6


хмм ... а нельзя ли как то сделать чтобы считало слева ?

зы только начал изучать smile.gif

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


Профи
****

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

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


если хочешь слева начать то надо найти как-бы разряд числа (для 46592 он будет 10000) а потом все просто..

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


Гость






Цитата
для 46592 он будет 10000
46592 ты не запихаешь в Integer, для начала... Разговор о 16-битном компиляторе, а не о 32-битах.

Добавлено через 5 мин.
Кстати, достаточно сделать так:

uses crt;
var s, a, n: integer;
begin
clrscr;
writeln('vvedite naturalnoe chislo');
readln(n);

s := 0;
while n <> 0 do begin
a := n mod 10;

if a = 0 then s := 0
else begin
if a mod 2 = 0 then s := s + a
end;
n := n div 10;
end;

writeln('summa cifr = ', s);
readln;
end.



Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #25


Профи
****

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

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


я так делал одну задачу, вот и вспомнил
Цитата
Разговор о 16-битном компиляторе, а не о 32-битах.

это значит что можно тоьлько Integer максимум использовать?
Вот так просто ты ее решил)
Не могу переставать тебе удивляться..

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





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

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


Цитата(volvo @ 17.11.2007 20:57) *
46592 ты не запихаешь в Integer, для начала... Разговор о 16-битном компиляторе, а не о 32-битах.

Добавлено через 5 мин.
Кстати, достаточно сделать так:

uses crt;
var s, a, n: integer;
begin
clrscr;
writeln('vvedite naturalnoe chislo');
readln(n);

s := 0;
while n <> 0 do begin
a := n mod 10;

if a = 0 then s := 0
else begin
if a mod 2 = 0 then s := s + a
end;
n := n div 10;
end;

writeln('summa cifr = ', s);
readln;
end.



огромный тебе респект !

ты меня выручил!!!

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





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

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


Цитата(volvo @ 17.11.2007 20:57) *
46592 ты не запихаешь в Integer, для начала... Разговор о 16-битном компиляторе, а не о 32-битах.

Добавлено через 5 мин.
Кстати, достаточно сделать так:

uses crt;
var s, a, n: integer;
begin
clrscr;
writeln('vvedite naturalnoe chislo');
readln(n);

s := 0;
while n <> 0 do begin
a := n mod 10;

if a = 0 then s := 0
else begin
if a mod 2 = 0 then s := s + a
end;
n := n div 10;
end;

writeln('summa cifr = ', s);
readln;
end.



ааа ((( - я в панике,нашёл в ней ошибки,к примеру - ввёл 444011,а оно мне выдало сумму -8 (( , спрашивается откуда взялось отрицательно число и я заметил такого плана ошибки выскакивают почти всегда когда вводишь подряд одинаковые цифры (444023, 666021, 888056 и тд )

помогите плиз ((

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


Профи
****

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

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


Поставь
 var s, a, n: LongInt;
для начала.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #29





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

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


Цитата(Malice @ 18.11.2007 18:56) *
Поставь
 var s, a, n: LongInt;
для начала.


спасибо )

помогло)

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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