Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Задача на Паскале 
:(
    Опции темы
Рыська
Дата 11.7.2005, 01:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.7.2005
Где: Питер

Репутация: нет
Всего: нет



мне тут задали такую задачку... помогите плиз...
вывести на экран все числа десятичной записи числа 2^500 вот....
PM MAIL ICQ   Вверх
Ch0bits
  Дата 11.7.2005, 01:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Python Dev.
****


Профиль
Группа: Завсегдатай
Сообщений: 2124
Регистрация: 21.2.2005
Где: Казань

Репутация: нет
Всего: 62



Код

begin
Writeln('2^500=');
Writeln('3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376');
end.


MatLab рулит! smile

Это сообщение отредактировал(а) Vadim999 - 11.7.2005, 01:57
PM WWW   Вверх
Snowy
Дата 11.7.2005, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 4
Всего: 484



Цитата
все числа десятичной записи числа 2^500

Это как? Число-то одно.
Может все цифры? Но тогда это 0123456789 smile
PM MAIL   Вверх
Рыська
Дата 11.7.2005, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.7.2005
Где: Питер

Репутация: нет
Всего: нет



Vadim999, хех спасибо я теперь знаю как оно целиком выглядит=))
PM MAIL ICQ   Вверх
dvs
Дата 11.7.2005, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Владимир Драпалюк
**


Профиль
Группа: Участник Клуба
Сообщений: 660
Регистрация: 25.8.2003
Где: Воронеж->Москв а

Репутация: нет
Всего: 19



Рыська, ты разобралась, что надо делать? Или алгоритм действий тебе рассказать?


--------------------
Любите друг друга!
PM MAIL WWW ICQ   Вверх
Рыська
Дата 11.7.2005, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.7.2005
Где: Питер

Репутация: нет
Всего: нет



dvs15, помочь...=)
PM MAIL ICQ   Вверх
Mayk
Дата 11.7.2005, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


^аВаТаР^ сообщение>>
****


Профиль
Группа: Участник
Сообщений: 2616
Регистрация: 22.5.2005
Где: за границей разум а

Репутация: 5
Всего: 134



Рыська
Если описывать в общих чертах, то
на алголисте есть информация по длинным числам.
А дальше просто. 2**500 = 2**(2**250) = 4**250 = 16**125. (где ** - возведение в степень).




--------------------
 Здесь был кролик. Но его убили.
Человеки < кроликов, йа считаю.
PM MAIL WWW ICQ   Вверх
Рыська
Дата 12.7.2005, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.7.2005
Где: Питер

Репутация: нет
Всего: нет



Помогите... кто может написать эту прогу... пожалуйста... денюжку заплачу... HELP!!!... а то ведь степендии лешусь...=((
PM MAIL ICQ   Вверх
Snowy
Дата 12.7.2005, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 4
Всего: 484



Так тебе нужно расчитать именно это число или все числа-степени от 2^2 до 2^500?
PM MAIL   Вверх
Рыська
Дата 12.7.2005, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.7.2005
Где: Питер

Репутация: нет
Всего: нет



нет только это...

PM MAIL ICQ   Вверх
Snowy
Дата 12.7.2005, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 4
Всего: 484



Хорошо, вот держи решение.
Накатал по такому принципу:
Получаемое число, которое явно не лезет в возможности дельфи.
Поэтому рассматриваем число, как массив одноциферных значений.
Писал на том уровне, чтобы похоже было на студента:
Код

var
  dig: array[1..255] of integer;
  s:   string;
  i,a: integer;

begin
  for i:=1 to 255 do dig[i]:=0;
  dig[1]:=2; // 2 в первой степени
  for i:=2 to 255 do  // считаем 2 от 2-й до 500-й степени
    for a:=499 downto 1 do // умножаем каждую цифру
    begin
      dig[a]:=dig[a]*2;
      if dig[a]>9 then
      begin
        dig[a]:=dig[a]-10;
        dig[a+1]:=dig[a+1]+1;
      end;
    end;
  s:='';
  a:=255;
  while dig[a]=0 do a:=a-1;
  for i:=1 to a do s:=chr(dig[i]+48)+s;
  WriteLn(s);
end.


Это сообщение отредактировал(а) Snowy - 12.7.2005, 17:21
PM MAIL   Вверх
Snowy
Дата 12.7.2005, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 4
Всего: 484



А можно обойтись и без стринга, а сделать в конце вместо
Код

  for i:=1 to a do s:=chr(dig[i]+48)+s;    
  WriteLn(s);

Код

  for i:=a downto 1 do Write(dig[i]);

PM MAIL   Вверх
Рыська
Дата 12.7.2005, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.7.2005
Где: Питер

Репутация: нет
Всего: нет



ааа уряяя=))) спасибо огромное...=))) *10 раз чмок*
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0796 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.