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

Зеркальное Отражение И Сисстемы счисления - C++

Восстановить пароль Регистрация
 
StepanDro
0 / 0 / 0
Регистрация: 04.05.2012
Сообщений: 9
18.06.2012, 16:55     Зеркальное Отражение И Сисстемы счисления #1
Помогите написать программу по решению задачи
Задача:
Выводить все двух и трёх значные числа 10-чной Системы Счисления которые выглядь как их зеркальное отражение в другой системе счисления
К примеру 123 в 10-чной выглядить как 321в какой то другой. ПРограмма сделанная на паскале есть. Если кто то смоожет чем то помочь - век не знабуду
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
18.06.2012, 22:29     Зеркальное Отражение И Сисстемы счисления #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
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <sstream>
#include <iterator>
#include <iomanip>
#include <vector>
#include <Windows.h>
using namespace std;
 
 
int main()
{
    SetConsoleCP (1251);
    SetConsoleOutputCP (1251);
    
    const int size_of_nunbers = 1000;
    ostringstream osst;                         //создаем обэкт ostringstream для записи чисел в поток
    vector<string> vec_dec;                     //здесь будем сохранять числа в виде строк в десятичной системе
    vector<string> vec_hex;                     //здесь будем сохранять числа в виде строк в шестнадцетиричной системе
    vector<string> revers(size_of_nunbers);     //здесь будем сохранять числа в виде строк в дзеркальном отображении
    for (int i = 0; i<size_of_nunbers; i++) {osst<<dec<<i<<" "<<hex<<i<<"\n";}  //записываем числа в поток ostringstream
    istringstream isst(osst.str());
    istream_iterator<string> begin(isst);
    for (int i = 0; i<size_of_nunbers; i++)
    {
        vec_dec.push_back(*begin++);
        vec_hex.push_back(*begin++);
        cout<<vec_dec[i]<<setw(8)<<vec_hex[i];  
        revers[i] = string(vec_hex[i].rbegin(), vec_hex[i].rend());
        cout<<setw(8)<<revers[i]<<endl;
    }
    for (int i = 0; i<size_of_nunbers; i++)
    {
        if (vec_dec[i] == revers[i])
            cout<<"Дзеркальное совпадение: "<<vec_dec[i]<<endl;
    }
    system("pause");
    return 0;
}
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
18.06.2012, 22:42     Зеркальное Отражение И Сисстемы счисления #3
yuron_477, по вашему есть только две системы счисления?
StepanDro
0 / 0 / 0
Регистрация: 04.05.2012
Сообщений: 9
20.06.2012, 17:20  [ТС]     Зеркальное Отражение И Сисстемы счисления #4
Помогите программу ниже перевести на с++ либо просто с
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
uses crt;
const digit:string[16]='0123456789ABCDEF'; //цифры
{функция перевода Dec числа в любую сс}
function FromDec(n,r:integer):string;
var s:String;
begin
s:='';
repeat
s:=digit[(n mod r)+1]+s;
n:=n div r;
until n=0;
FromDec:=s;
end;
{проверка на палиндромы}
function IsRevers(s1,s2:string):boolean;
var i,n:integer;
 f:boolean;
begin
if length(s1)<>length(s2) then f:=false
else
 begin
 i:=1;
 f:=true;
 n:=length(s1);
 while(i<=n) and f do
 if s1[i]<>s2[n-i+1] then f:=false
 else inc(i);
 end;
IsRevers:=f;
end;
var i,j:integer;
 s:string;
begin
for i:=10 to 999 do {все числа}
 begin
 str(i,s); {преобразуем в строку}
 for j:=2 to 16 do {проверяем во всех системах
 если палиндром в СС 10 и в данной, то выводим}
 if IsRevers(s,FromDec(i,j))and(j<>10) then writeln(s,'=',FromDec(i,j),' CC',j)
 end;
end.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,409
20.06.2012, 17:32     Зеркальное Отражение И Сисстемы счисления #5
Мб есть смысл озвучить задание? Так процесс быстрее пойдет.
-=ЮрА=-
Заблокирован
Автор FAQ
20.06.2012, 17:37     Зеркальное Отражение И Сисстемы счисления #6
Цитата Сообщение от MrGluck Посмотреть сообщение
Мб есть смысл озвучить задание? Так процесс быстрее пойдет.
MrGluck, первод числа в любую систему счисления
Цитата Сообщение от StepanDro Посмотреть сообщение
функция перевода Dec числа в любую сс
StepanDro, как я понял надо на писать через строки?
Цитата Сообщение от StepanDro Посмотреть сообщение
var s:String;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2012, 17:43     Зеркальное Отражение И Сисстемы счисления
Еще ссылки по теме:

C++ Дана строка s, содержащая n символов s1, s2, . , sn,. Зеркальное отражение строки
C++ Строка символов s1, s2, . , sn. Зеркальное отражение строки без последнего символа
Проверка на зеркальное отражение строки C++

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

Или воспользуйтесь поиском по форуму:
StepanDro
0 / 0 / 0
Регистрация: 04.05.2012
Сообщений: 9
20.06.2012, 17:43  [ТС]     Зеркальное Отражение И Сисстемы счисления #7
мне надо что бы программа искала все двух и трх значные числа десятичное СС которые вглять как их зеркальное отражение.... то есть типа 123 в десятичной СС выглядит как 321 в какой либо другой СС... ПРограмму запустите через АБЦ Паскаль. Там вс Сразу понятно будет в чём задание
Yandex
Объявления
20.06.2012, 17:43     Зеркальное Отражение И Сисстемы счисления
Ответ Создать тему
Опции темы

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