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

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

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

> Разложение числа на цифры, ПЛЗ посмотрите сначала прежде чем в фак посылать
kr3v3tkus
сообщение 17.12.2005 22:27
Сообщение #1


Пионер
**

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

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


Посмотрите пожалста задачу, я уже в поиске искал. но там выдаёт такое разбивание числа типа 6=5+1 или сумма чисел в массиве, а мне надо типа 605=6+0+5. Вся трудность в том, что я не знаю как применить свойство мода и дива для множества чисел sad.gif я знаю, что чтобы получить например 2 из 123
нужно сделать (123 div 10) mod 10, но если у нас есть такое число - 1234, то ведь надо например для 1 делать просто div 1000, для 2 и див и мод ну и т.д.
Помогите или пошлите в пример плз unsure.gif

Составить программу нахождения среднего арифметического значения цифр заданного натурального числа N (1<N<1000000000).

Код
program lol;
var n:longint;
      k,s:integer;
begin
k:=1;
s:=0;
z:=n;
writeln('vvesti 4islo');
readln(n);
writeln;
if (n>1)and(n<1000000000) then  {'условие для n'}
  begin

    while z>=10 do  {'здесь идёт вычисление из скольки цифр состоит число'}
      begin
        z:=z div 10;
        k:=k+1;
      end;

  begin  {' !!! а здесь надо найти сумму состовляющих число цифр'}
    while i<=k do

  end;

  end;
else writeln('neprav1ln1y argyment');
readln;
end.


--------------------
Цитата
          .     .
           \__/
          (**)
(>:=:=:~~ 
  ^ ^ ^ ^ 

Креветка присваивания :DDD
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Alex7
сообщение 17.12.2005 23:19
Сообщение #2


Пионер
**

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

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


Цитата
Составить программу нахождения среднего арифметического значения цифр заданного натурального числа N (1<N<1000000000).

Значит скажем так.
Есть у меня такая(ну, почти) работающая програма, но написано очень коряво, ибо давно и на тупую голову. yes2.gif
Если чо поймешь, то можешь взять с нее куски:
Код
program suma_cifr_4isel_ta_porivnyannya_sum;
var n1,s1,n2,s2:longint;
    a1,a2:byte;
label xxx1, sp1, xxx2, sp2;
begin
     writeln ('Rozrahunok sum cifr dvoh 4isel ta porivnyannya');
     repeat
     write ('Vvedit" 4isla A,B (4erez probil) - ');
     readln (n1,n2);
     if (n1<0) or (n2<0) then writeln ('Dani vvedeno nepravilno');
     until (n1>=0) and (n2>=0);
     s1:=0;
         xxx1: begin
         a1:=n1 mod 10;
         s1:=s1+a1;
         n1:=n1 div 10;
         if n1>10 then goto xxx1;
         if n1<10 then goto sp1;
         sp1:
         s1:=s1+n1;
         writeln;
         writeln('Suma cifr 4isla A = ',s1);
         end;
     s2:=0;
         xxx2: begin
         a2:=n2 mod 10;
         s2:=s2+a2;
         n2:=n2 div 10;
         if n2>10 then goto xxx2;
         if n2<10 then goto sp2;
         sp2:
         s2:=s2+n2;
         writeln('Suma cifr 4isla B = ',s2);
         end;
         writeln;
         write ('  Porivnyannya:');
         if s1-s2<0 then write (' A < B') else
         if s1-s2=0 then write (' A = B') else
         write (' A > B');
         readln
end.

Главнгое чо хочу сказать, так это то что
Код
while z>=10 do  {'здесь идёт вычисление из скольки цифр состоит число'}
      begin
        z:=z div 10;
        k:=k+1;
      end;

по моему не правиьно организовано, см. мою прогу→ там я использу. mod 10 чтобы получить последнюю цифру числа.
-=еще раз извиняюсь за корявую програму- нету времени щас переделывать=-
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



- Текстовая версия 21.06.2025 6:02
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"