Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 67
1

Найти целые числа, которые при возведении в x^2, x^3,x^4 и x^5 степень дают палиндромы

11.11.2011, 08:29. Показов 3374. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
найти все целые числа на диапазоне от 1 до 100 которые при возведении в x^2, x^3,x^4 и x^5 степень дают палиндромы
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.11.2011, 08:29
Ответы с готовыми решениями:

Найти целые числа, которые при возведении в квадрат дают палиндром
найти все целые числа на диапазоне от n до m которые при возведении в квадрат дают палиндром....

Найти все числа от 1 до n которые при поднесение в квадрат дают палиндромы
Найти все числа от 1 до n которые при поднесение в квадрат дают палиндромы Пожалуйста помогите

Найти все числа, которые при делении на a дают остаток b, а при делении на b дают в остатке a
Ввести два натуральных числа a и b, на промежутке от 1 до N найти все числа, которые при делении на...

Ошибка 207 при возведении числа в степень
for i:=1 to n do a:=(exp(i*ln(-1))) как возвести -1 в степень подскажите?

13
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.11.2011, 09:09 2
Вообще-то или условие неточное или глупое, как написано, то это только число 1.
Может нужно если хоть 1 из степеней палиндром?

Pascal
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
uses crt;
function IsPalindrom(n:longint):boolean;
var m,p:longint;
begin
m:=n;
p:=0;
while m>0 do
 begin
  p:=p*10+m mod 10;
  m:=m div 10;
 end;
IsPalindrom:=p=n
end;
var i,k:longint;
begin
writeln('Числа, 2-я,3-я,4-я,5-я степени которых палиндромы');
k:=0;
for i:=1 to 100 do
if IsPalindrom(i*i)and IsPalindrom(i*i*i)and IsPalindrom(i*i*i*i)and IsPalindrom(i*i*i*i*i)then
 begin
  k:=1;
  writeln(i,' ',i*i,' ',i*i*i,' ',i*i*i*i,' ',i*i*i*i*i);
 end;
if k=0 then write('Таких чисел в этом диапазоне нет');
readln
end.
1
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 67
11.11.2011, 17:59  [ТС] 3
нужно если хоть 1 из степеней палиндром. и без функций.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.11.2011, 18:04 4
Ну тогда и решайте как здесь, только вместо одной проверки пока руки не отнимутся, раз функции использовать Вам вера не позволяет.
Найти целые числа, которые при возведении в квадрат дают палиндром
0
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 67
11.11.2011, 18:07  [ТС] 5
нужно с помощью цикл for
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.11.2011, 18:09 6
А это не цикл for?
Pascal
1
2
3
4
5
6
for i:=1 to 100 do
if IsPalindrom(i*i)and IsPalindrom(i*i*i)and IsPalindrom(i*i*i*i)and IsPalindrom(i*i*i*i*i)then
 begin
  k:=1;
  writeln(i,' ',i*i,' ',i*i*i,' ',i*i*i*i,' ',i*i*i*i*i);
 end;
Только все and заменить на or
0
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 67
11.11.2011, 18:14  [ТС] 7
Pascal
1
2
3
4
5
6
7
8
while i1>0 do
     begin
      p:=p*10+i1 mod 10;
      i1:=i1 div 10;
     end;
    if p=i*i then
     begin
      writeln(i,'  ',i*i);
как в эту задачу вписать for, чтобы работало и для других степеней. без огромной проверки. просто мы функции еще не учили.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.11.2011, 18:18 8
Pascal
1
2
3
if p=(i*i)or(p=i*i*i)or(p=i*i*i*i)or(p=i*i*i*i*i) then
     begin
      writeln(i,'  ',i*i,' ',i*i*i,' ',i*i*i*i,' ',i*i*i*i*i);
0
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 67
11.11.2011, 18:35  [ТС] 9
эта проверка не правильная. например, число 11 никак не будет равно 11^степень
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.11.2011, 19:51 10
Цитата Сообщение от nastenkaa Посмотреть сообщение
число 11 никак не будет равно 11^степень
11^=121 палиндром
0
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 67
11.11.2011, 19:54  [ТС] 11
if p=(i*i)or(p=i*i*i)or(p=i*i*i*i)or(p=i*i*i*i*i) then
begin
writeln(i,' ',i*i,' ',i*i*i,' ',i*i*i*i,' ',i*i*i*i*i);
но по этой записи 11=121
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.11.2011, 19:56 12
Цитата Сообщение от nastenkaa Посмотреть сообщение
но по этой записи 11=121
Ну я не знаю что нужно выводить, выводи только само число, пусть степени препод сам в уме считает, в условии написано

Цитата Сообщение от nastenkaa Посмотреть сообщение
найти все целые числа на диапазоне от 1 до 100 которые
вот и выводи только сами числа.
0
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 67
11.11.2011, 19:59  [ТС] 13
вы бы не могли написать задачу с начала до конца. я просто уже запуталась, только без функций, а с for
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.11.2011, 20:13 14
Тупая задача, тупая программа, тупой препод и студент.
Pascal
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
uses crt;
var i,k,m,p:longint;
begin
writeln('Числа, 2-я или 3-я или 4-я или 5-я степени которых палиндромы');
k:=0;
for i:=1 to 100 do
 begin
  m:=i*i;
  p:=0;
  while m>0 do
   begin
    p:=p*10+m mod 10;
    m:=m div 10;
   end;
  if p=i*i then
   begin
    k:=1;
    writeln(i,'^2=',i*i)
   end
  else
   begin
    m:=i*i*i;
    p:=0;
    while m>0 do
     begin
      p:=p*10+m mod 10;
      m:=m div 10;
     end;
    if p=i*i*i then
     begin
      k:=1;
      writeln(i,'^3=',i*i*i)
     end
    else
     begin
      m:=i*i*i*i;
      p:=0;
      while m>0 do
       begin
        p:=p*10+m mod 10;
        m:=m div 10;
       end;
      if p=i*i*i*i then
       begin
        k:=1;
        writeln(i,'^4=',i*i*i*i)
       end
      else
       begin
        m:=i*i*i*i*i;
        p:=0;
        while m>0 do
         begin
          p:=p*10+m mod 10;
          m:=m div 10;
         end;
        if p=i*i*i*i*i then
         begin
          k:=1;
          writeln(i,'^5=',i*i*i*i*i)
         end;
    end;
   end;
  end;
 end;
if k=0 then write('Таких чисел в этом диапазоне нет');
readln
end.
0
11.11.2011, 20:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.11.2011, 20:13
Помогаю со студенческими работами здесь

Найти все пятизначные числа, которые при делении на A дают в остатке B, а при делении на C дают в остатке D
Напишите программу, которая вводит четыре натуральных числа (a, b, c и d) и находит все пятизначные...

Найти трехзначные числа, которые при делении на 47 дают в остатке 43
Составить программу поиска трехзначных чисел, которые при делении на 47 дают в остатке 43, а при...

Найти и напечатать те числа, которые при делении на 7 дают остаток 1, 2 или 5
даны натуральные числа от 35 до 87. Найти и напечатать те из них, которые при делении на 7 дают...

Найти все трёхзначные числа, которые при делении на 2 дают остаток 1
1. решила 2. Найти все трёхзначные числа, которые при делении на 2 дают остаток 1, при делении на...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru