Форум программистов, компьютерный форум CyberForum.ru

Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом - C++

Восстановить пароль Регистрация
 
Ерофей
0 / 0 / 0
Регистрация: 26.01.2012
Сообщений: 5
26.01.2012, 18:15     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #1
Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся полиндромом. Число называется полиндромом, если оно читается одинаково как сначала, так и с конца (например 383, 22). Число Nпередать подпрограмме, как параметр.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.01.2012, 18:15     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом
Посмотрите здесь:

Дано натуральное число n. Вывести на экран все натуральные числа, меньше n и взаимно простые с ним. C++
C++ Вывести все натуральные числа, меньше за n. С++
Функция,которая печатает все элементы массива, большие заданного числа C++
C++ Получить все меньше n натуральные числа, квадрат суммы которых равна m
C++ Получить все натуральные числа, меньше n и взаимно простые с ним
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
26.01.2012, 18:26     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #2
C++
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int n;
    cout << "n = " << endl;
    cin >> n;
    for (int i = 0; i <= n; i++)
    {
        int x = i;
        int x2 = 0;
        while(x > 0)
        {
            int y = x % 10;
            x2 = x2 * 10 + y;
            x /= 10;
        }
        if (x2 == i)
           cout << i << endl;
    }
    system("PAUSE");
    return EXIT_SUCCESS;
}
Добавлено через 2 минуты
С функцией:
C++
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
void polPrint(int x)
{
    int y = x;
    int x2 = 0;
    while(x > 0)
    {
        int y = x % 10;
        x2 = x2 * 10 + y;
        x /= 10;
    }
    if (x2 == y)
        cout << y << endl;
}
 
int main(int argc, char *argv[])
{
    int n;
    cout << "n = " << endl;
    cin >> n;
    for (int i = 0; i <= n; i++)
       polPrint(i);
    system("PAUSE");
    return EXIT_SUCCESS;
}
Ерофей
0 / 0 / 0
Регистрация: 26.01.2012
Сообщений: 5
26.01.2012, 18:32  [ТС]     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #3
Спасибо большое)))))
Pcheltomsk
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 4
15.10.2013, 12:00     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #4
Можете пояснить строчку: "
int main(int argc, char *argv[])"
Заранее спасибо.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
15.10.2013, 12:03     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #5
Pcheltomsk, одна из разновидностей объявлений стандартной функции main. При таком формате ф-ция принимает в первом параметре количество аргументов, во втором эти самые аргументы, передаваемые программе из внешней среды.
Pcheltomsk
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 4
15.10.2013, 12:15     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #6
Спасибо.) Наша версия компилятора/cи пропускает эту программу, но происходит зацикливание, может и тут подскажите?
C++
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
#include <stdlib.h>
#include <iostream.h>
 
void polPrint(int x)
{
int y=x;
int x2 = 0;
while(x > 0)
 
y = x % 10;
x2 = x2 * 10 + y;
x |= 10;
 
if (x2 == y)
cout << y << endl;
}
 
int main()
{
int n;
cout << "n = " << endl;
cin >> n;
for (int i = 0; i <= n; i++)
polPrint(i);
system("PAUSE");
return EXIT_SUCCESS;
}
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
15.10.2013, 12:18     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #7
Цитата Сообщение от Pcheltomsk Посмотреть сообщение
while(x > 0)
y = x % 10;
если объявлять цикл без фигурных скобок, то тело цикла воспринимается как одна строчка/инструкция, то есть всего лишь y = x % 10;
Pcheltomsk
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 4
15.10.2013, 19:00     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #8
Цитата Сообщение от MrGluck Посмотреть сообщение
если объявлять цикл без фигурных скобок, то тело цикла воспринимается как одна строчка/инструкция, то есть всего лишь y = x % 10;
не помогла расстановка скобочек, видимо в чем-то еще проблема...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2013, 22:22     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом
Еще ссылки по теме:

C++ Написать рекурсивную функцию, которая выводит все натуральные числа из отрезка
C++ Найти все натуральные числа меньше n и взаимно простые с ним
Вывести все одноразрядные натуральные делители произвольного большого числа (количество цифр меньше 15) C++

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

Или воспользуйтесь поиском по форуму:
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
15.10.2013, 22:22     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом #9
Выложите исправленный код
Yandex
Объявления
15.10.2013, 22:22     Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом
Ответ Создать тему
Опции темы

Текущее время: 23:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru