![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Mimosa |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 22 Пол: Женский Репутация: ![]() ![]() ![]() |
скажите,пожалуйста можно ли решить задачу,с помощью оператора For....do?
Задача Найти сумму цифр числа.число трехзначное. |
мисс_граффити |
![]()
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Можно, конечно.
Поскольку известно, что число трехзначное... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Sto |
![]()
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Илья Репутация: ![]() ![]() ![]() |
Можно, конечно. Поскольку известно, что число трехзначное... Пожалуйста, обьясни как это сделать. Немогу придумать ![]() Мне кажется так будет проще Var Сообщение отредактировано: Sto - |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Точно так же, как и с While(учитывая что число - трехзначное)
for i := 1 to 3 do begin |
Sto |
![]()
Сообщение
#5
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Илья Репутация: ![]() ![]() ![]() |
volvo отличный способ
![]() |
Mimosa |
![]()
Сообщение
#6
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 22 Пол: Женский Репутация: ![]() ![]() ![]() |
я не пойму,почему так:
For i:=1 to 3 do begin S:=s +n mod 10; n:=n div 10; |
Sto |
![]()
Сообщение
#7
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Илья Репутация: ![]() ![]() ![]() |
У тебя есть число n.
Допустим это 539. Начинается цыкл, повторений у нас три. 1 повторение 539 mod 10 = 9, так как ближайшее целое число которое делится на 10 это 530, значит 539-530=9; 539 div 10 = 59; Div - оставляет только целую часть в результате деления. 539/10=53,9 целая часть 53. в результате у нас S=9, a n=53; 2 Повторение 53 mod 10 = 3, так как ближайшее целое число которое делится на 10 это 50, значит 53-50=3; 53 div 10 = 5; Div - оставляет только целую часть в результате деления. 53/10=5,3 целая часть 5. в результате у нас S=9+3=12, a n=5; 3 Повторение 5 mod 10 = 5, так как ближайшее целое число которое делится на 10 это 0, значит 5-0=5; 5 div 10 = 5; Div - оставляет только целую часть в результате деления. 5/10=0,5 целая часть 0. в результате у нас S=12+5=17, a n=0; Конец цыкла Старался обьяснить понятно, а получилось как всегда ![]() + Таким способом можно найти суму чисел для любого целого числа, не только 3-х значного. Сообщение отредактировано: Sto - |
Mimosa |
![]()
Сообщение
#8
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 22 Пол: Женский Репутация: ![]() ![]() ![]() |
![]() n:=n div 10 |
Sto |
![]()
Сообщение
#9
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Илья Репутация: ![]() ![]() ![]() |
почему имеено от 1 до 3,и почему мы так делаем S:=s +n mod 10; n:=n div 10 от 1 до 3 потомучто у нас трехзначное число, тоесть нам к переменной s нужно добавить три чила. в начале когда ты обьявляеш переменную s ее значение равно 0. потом цыкл 1. s=s+последняя цыфра чила. И предыдущего примера s=0+9=9 n:=n div 10 мы удаляем последнюю цыфру числа n, чило от 539 до 53 2. s=s+последняя цыфра чила. Тоесть s=9+3=12 n:=n div 10 мы удаляем последнюю цыфру числа n, от 53 до 5 2. s=s+последняя цыфра чила. Тоесть s=12+5=17 n:=n div 10 мы удаляем последнюю цыфру числа n, от 5 до 0 конец цыкла в результате у нас сумма равна 17 Сообщение отредактировано: Sto - |
![]() ![]() |
![]() |
Текстовая версия | 2.06.2023 11:57 |