Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/21: Рейтинг темы: голосов - 21, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 22.06.2017
Сообщений: 11

Является ли натуральное число N степенью числа 4

22.06.2017, 16:12. Показов 4499. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Определить, является ли натуральное число N степень числа 4 или нет.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.06.2017, 16:12
Ответы с готовыми решениями:

Описать функцию, определяющую, является ли число К степенью числа 5
Помогите пожалуйста! Описать функцию, определяющую, является ли число К степенью числа 5. с ее помощью найти количество степеней числа 5 в...

Логической переменной T присвоить значение true или false в зависимости от того, является натуральное число R , не большего 100000, степенью 3 или нет
Здравствуйте, помогите пожалуйста, есть задача: Логической переменной T присвоить значение true или false в зависимости от того, является...

Дано целое число N>0, если оно является степенью числа 3 то вывести TRUE, если нет - FALSE
Дано целое число N>0, если оно является степенью числа 3 то вывести TRUE, если нет - FALSE

8
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,434
22.06.2017, 17:21
Проверить, является ли число A степенью числа K
0
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,060
23.06.2017, 06:14
ZX Spectrum-128, не правильную ссылку вы тут даёте!
Хоть она и на мою же программу, что лестно, но всё же…
Именно для четверки можно сделать по другому:
Pascal
1
2
3
4
5
6
7
const r : array [Boolean] of String[3] = ('No', 'Yes');
var n, v : integer;
begin
  ReadLn(n); v := 1;
  while v < n do v := v shl 2;
  WriteLn(r[v = n]);
end.
0
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,434
23.06.2017, 07:11
Цитата Сообщение от JuriiMW Посмотреть сообщение
не правильную ссылку вы тут даёте
Почему не правильную? Она же работает, честно проверяет числа, являются ли они степенью 4-ки.
0
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,060
23.06.2017, 07:21
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

Она не использует бинарного представления числа 4.
А главное, не верно отвечает на вопрос данного задания.
Там нужно вернуть степень, а здесь — сказать „является“ или „нет“.

Хотя, тоже не ясно, какими именно словами она должна об этом сообщить…
А это очень важно!
1
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,434
23.06.2017, 08:03
JuriiMW, теперь понял. Спасибо.
0
3410 / 1829 / 489
Регистрация: 28.02.2015
Сообщений: 3,696
27.06.2017, 11:48
А если так
Pascal
1
2
3
4
5
6
7
var
  a:integer;
begin
  write('enter a:');
  readln(a);
  writeln(frac(ln(a)/ln(4))=0);
end.
0
Модератор
10428 / 5716 / 3404
Регистрация: 17.08.2012
Сообщений: 17,380
29.06.2017, 00:43
Constantin Cat, нет. Ошибки округления. Проверяем (FPC):
Pascal
1
2
3
4
5
6
7
8
9
var a: int64 = 1;
begin
  while a > 0 do
    begin
      writeln(a:20, frac(ln(a)/ln(4))=0:6);
      a := a shl 2
    end;
  readln
end.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
                   1  TRUE
                   4  TRUE
                  16  TRUE
                  64  TRUE
                 256  TRUE
                1024  TRUE
                4096  TRUE
               16384 FALSE
               65536  TRUE
              262144  TRUE
             1048576  TRUE
             4194304  TRUE
            16777216  TRUE
            67108864  TRUE
           268435456 FALSE
          1073741824  TRUE
          4294967296  TRUE
         17179869184  TRUE
         68719476736  TRUE
        274877906944  TRUE
       1099511627776  TRUE
       4398046511104  TRUE
      17592186044416  TRUE
      70368744177664  TRUE
     281474976710656  TRUE
    1125899906842624 FALSE
    4503599627370496  TRUE
   18014398509481984  TRUE
   72057594037927936 FALSE
  288230376151711744  TRUE
 1152921504606846976  TRUE
 4611686018427387904 FALSE
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33379 / 21503 / 8236
Регистрация: 22.10.2011
Сообщений: 36,899
Записей в блоге: 12
30.06.2017, 20:38
Лучший ответ Сообщение было отмечено Новичок как решение

Решение

Зато
Pascal
1
2
3
4
5
6
7
8
9
10
uses Math;
var a: Int64 = 1;
begin
  while a > 0 do
  begin
    writeln(a:20, SameValue(Frac(Ln(a)/Ln(4)), 0.0):6);
    a := a shl 2
  end;
  readln
end.
(в FPC) возвращает абсолютно правильное:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
                   1  TRUE
                   4  TRUE
                  16  TRUE
                  64  TRUE
                 256  TRUE
                1024  TRUE
                4096  TRUE
               16384  TRUE
               65536  TRUE
              262144  TRUE
             1048576  TRUE
             4194304  TRUE
            16777216  TRUE
            67108864  TRUE
           268435456  TRUE
          1073741824  TRUE
          4294967296  TRUE
         17179869184  TRUE
         68719476736  TRUE
        274877906944  TRUE
       1099511627776  TRUE
       4398046511104  TRUE
      17592186044416  TRUE
      70368744177664  TRUE
     281474976710656  TRUE
    1125899906842624  TRUE
    4503599627370496  TRUE
   18014398509481984  TRUE
   72057594037927936  TRUE
  288230376151711744  TRUE
 1152921504606846976  TRUE
 4611686018427387904  TRUE
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.06.2017, 20:38
Помогаю со студенческими работами здесь

Описать логическую функцию, которая проверяет, является ли заданное целое число "k" степенью некоторого числа p.
Описать логическую функцию, которая проверяет, является ли заданное целое число &quot;k&quot; степенью некоторого числа &quot;p&quot;....

Выяснить, является ли простым натуральное число n. Определить функцию, позволяющую распознавать простые числа
Уважаемые программисты,помогите пожалуйста с задачкой по паскалю, не получается составить программу Дано натуральное число n....

Является ли число 32768 степенью 2
Нужно сделать такую программку: Является ли число 32768 степенью 2. На ум ничего не приходит.

Определить является ли число степенью двух
Не получается решить задачу помогите пожалуйста.Для каждого из десяти последовательно вводимых натуральных чисел определить является ли оно...

Определить, является ли оно степенью числа 2
Здравствуйте! Нужна помощь в решении задач. Помогите, пожалуйста. 1. Треугольник задан координатами своих вершин. Проверить...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru