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

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

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

 
 Ответить  Открыть новую тему 
> цифровой корень числа
сообщение
Сообщение #1


Новичок
*

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

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


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


Гость






Yaroslav
Что значит "цифровой корень числа?"
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

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

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


эТО ЗНАЧИТ ПРОСТОЙ КОРЕНЬ!!!!!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Yaroslav
Цитата из правил форума:
Цитата
И небольшое пояснение про ЗАГЛАВНЫЕ БУКВЫ: такое написание РАСЦЕНИВАЕТСЯ КАК КРИК!!! Вам приятно, когда на вас кричат?


Учитесь задавать вопросы... И пользоваться поиском. Я уже давал ссылку на решение этой задачи...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






А что значит ПРОСТОЙ КОРЕНЬ blink.gif
Вообще-то он называется арифметическим <_<
Да и не КРИЧИ angry.gif

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


Гость






Yaroslav
В следующий раз хотя бы точность задавайте...
Код

const
 eps = 0.000001;

var
 x, x0, x1: real;
begin
 write('x = '); readln(x);
 x1 := 1;
 while true do
   begin
     x0 := x1; x1 := 0.5 * (x0 + x/x0);
     if abs(x0 - x1) <= eps then break
   end;

 writeln('sqrt(x) = ', x0:15:10)
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

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

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


Цитата(volvo @ 14.12.04 23:30)
Yaroslav
В следующий раз хотя бы точность задавайте...
Код

const
 eps = 0.000001;

var
 x, x0, x1: real;
begin
 write('x = '); readln(x);
 x1 := 1;
 while true do
   begin
     x0 := x1; x1 := 0.5 * (x0 + x/x0);
     if abs(x0 - x1) <= eps then break
   end;

 writeln('sqrt(x) = ', x0:15:10)
end.

Что значит eps=0.000001?
Что значит abs(x0-x1)?
Что значит writeln('sqrt(x) = ', x0:15:10)?
Спасибо за решение задачи!Она работает!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


-
****

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

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


eps=0.000001 - c точностью до такого-то знака
abs(x0-x1) - |х0-х1|
writeln('sqrt(x) = ', x0:15:10) - вывод на экран


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


Новичок
*

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

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


Цитата(volvo @ 14.12.04 23:30)
Yaroslav
В следующий раз хотя бы точность задавайте...
Код

const
 eps = 0.000001;

var
 x, x0, x1: real;
begin
 write('x = '); readln(x);
 x1 := 1;
 while true do
   begin
     x0 := x1; x1 := 0.5 * (x0 + x/x0);
     if abs(x0 - x1) <= eps then break
   end;

 writeln('sqrt(x) = ', x0:15:10)
end.

Помогите пожалуйста найти цифровой корень числа через цикл while на Pascal!!!
Цифровой корень не является арифметическим!
Он высчитывается так: например:
Для числа 23456 цифровой корень высчитывается так:
2+3+4+5+6=20
2+0=2
Цифровой корень равен 2



Или для 456
4+5+6=15
1+5=6
Цифровой корень равен 6


Или для 678955
6+7+8+9+5+5=40
4+0=4
Цифровой корень равен 4
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






Yaroslav
Так бы сразу и говорил... Держи:
Код

var x, s: integer;
begin
 write('x = '); readln(x);
 while x >= 10 do
   begin
     s := 0;
     while x > 0 do
       begin
         s := s + (x mod 10);
         x := x div 10;
       end;
     x := s;
   end;
 writeln('root = ', x)
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Новичок
*

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

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


Цитата(volvo @ 17.12.04 21:36)
Yaroslav
Так бы сразу и говорил... Держи:
Код

var x, s: integer;
begin
 write('x = '); readln(x);
 while x >= 10 do
   begin
     s := 0;
     while x > 0 do
       begin
         s := s + (x mod 10);
         x := x div 10;
       end;
     x := s;
   end;
 writeln('root = ', x)
end.

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


Новичок
*

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

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


Цитата(Yaroslav @ 19.12.04 11:36)
эта программа работает некорректно!!!я ввожу числа и у всеч них цифровой корень равен нулю!!!перерешайте пожалуйста!!!

Я ИДИОТ!!!!!!!!!Извиняюсь, всё РАБОТАЕТ!!! перерешивать не надо!спасибо!!! :yes:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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