Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/40: Рейтинг темы: голосов - 40, средняя оценка - 4.80
 Аватар для TopLoader
43 / 43 / 6
Регистрация: 10.12.2011
Сообщений: 128

1001. Обратный корень

31.12.2011, 17:59. Показов 7835. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Собственно задача.
Не могу сообразить, как правильно читать поток, подскажите пожалуйста


Не по теме:

P.S.: Всех с Наступающим! =)

0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.12.2011, 17:59
Ответы с готовыми решениями:

Обратный корень
Добрый вечер, господа! Давно интересует данная задача, можете помочь решить? Я не понимаю как реализовать, как именно понять, что это конец...

Напишите программу «КОРЕНЬ», которая запрашивает число и выдает корень квадратный из заданного числа
Напишите программу «КОРЕНЬ», которая запрашивает число и выдает корень квадратный из заданного числа. Запросы продолжаются до тех пор,...

1001. Обратный корень
Задача отсюда http://acm.timus.ru/problem.aspx?space=1&num=1001 Кстати, на самом сайте есть 2 решения этой же задачи, это здесь...

26
 Аватар для TopLoader
43 / 43 / 6
Регистрация: 10.12.2011
Сообщений: 128
01.01.2012, 13:31  [ТС]
Студворк — интернет-сервис помощи студентам
Всем спасибо за помощь
По идее правильно работать должен следующий код:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
var a:array[1..255] of real;
    i,j:integer;
begin
i:=0;
while not(seekeof) do
  begin
    inc(i);
    read(a[i]);
  end;
for j:=i downto 1 do
  writeln(sqrt(a[j]):0:4);
end.
Однако на одном из тестов он крэшится с Access violation (обращение по недоступному адресу в памяти). Но это уже, судя по всему, ошибка в самом алгоритме
0
Почетный модератор
 Аватар для Puporev
64320 / 47616 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.01.2012, 13:58
Маленький размер массива, да и тип нужно наверное взять Int64.
Там написано что размер исходных данных до 256 кб, а это значит что чисел может быть до 256*1024/64=4096
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
01.01.2012, 14:08
Цитата Сообщение от Puporev Посмотреть сообщение
ам написано что размер исходных данных до 256 кб, а это значит что чисел может быть до 256*1024/64=4096
Почему на 64?
Цитата Сообщение от Puporev Посмотреть сообщение
Int64.
А что за тип такой? В ТР его нет. А это его раздел на форуме.
0
Почетный модератор
 Аватар для Puporev
64320 / 47616 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.01.2012, 14:10
64 битный целый, есть во Фрее Паскаль, там по условию числа целые до 10^18 можно еще comp, но не real, в нем только 10-11 точных цифр.
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
01.01.2012, 14:13
Размер массива в худшем случае 256*1024 / 2 + 1 (все числа 1 байт и между ними пробел)

Добавлено через 29 секунд
Цитата Сообщение от Puporev Посмотреть сообщение
64 битный целый, есть во Фрее Паскаль,
В ТР такого нет. А это раздел ТР.

Добавлено через 1 минуту
Объявлять необходимо свой тип
Pascal
1
type Int64 = -9223372036854775808..9223372036854775807;
0
Почетный модератор
 Аватар для Puporev
64320 / 47616 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.01.2012, 14:15
Цитата Сообщение от go Посмотреть сообщение
В ТР такого нет. А это раздел ТР.
Так не раздел смотри, а правила сайта откуда задача, там все для Фрее Паскаль.

Добавлено через 38 секунд
У нас задачи по Паскалю и в раздел Обо всем пишут...
0
 Аватар для TopLoader
43 / 43 / 6
Регистрация: 10.12.2011
Сообщений: 128
01.01.2012, 15:55  [ТС]
Да, извиняюсь, раздел я не тот выбрал, нужно было во Free Pascal топик создавать...

Компилятор полностью поддерживает 64-битные целые, как со знаком, так и без знака. 64-битное целое со знаком имеет диапазон значений от –9223372036854775808 до 9223372036854775807, без знака — от 0 до 18446744073709551615. Знаковый тип назывется int64, беззнаковый — qword.
Добавлено через 23 минуты
Теперь получаю Wrong answer


Проверил на Free Pascal: по контрольному примеру выдаёт правильные ответы ().
Использовал следующий код:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
var a:array[1..32768] of int64;
    i,j:integer;
begin
i:=0;
while not(seekeof) do
  begin
    inc(i);
    read(a[i]);
  end;
for j:=i downto 1 do
  writeln(sqrt(a[j]):0:4);
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.01.2012, 15:55

Обратный корень
Объясните пожалуйста , что такое потоки на примере этой задачи: http://acm.timus.ru/problem.aspx?space=1&num=1001 Исходные...

Обратный корень
Исходные данные Входной поток содержит набор целых чисел Ai (0 ≤ Ai ≤ 1018), отделённых друг от друга произвольным количеством пробелов и...

Обратный корень
Пожалуйста, помогите решить задачу, не получается уже месяц (если решать с массивами, то нужно создавать по условию задачи массив размером...

Обратный корень
Исходные данные Входной поток содержит набор целых чисел Ai (0 ≤ Ai ≤ 1018), отделённых друг от друга произвольным количеством пробелов и...

Вычислить обратный корень числа
Исходные данные: Входной поток содержит набор целых чисел Ai (0 ≤ Ai ≤ 1018), отделённых друг от друга произвольным количеством пробелов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Альцгеймер и колоссальный объем вычислений
Programma_Boinc 08.08.2026
Альцгеймер и колоссальный объем вычислений Сейчас по направлению болезни Альцгеймера идет колоссальный объем вычислений. Это один из главных приоритетов проекта. Такой массовый наплыв задач. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru