Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.01.2011, 16:41   #1
Petrovich12
Новичок
Джуниор
 
Регистрация: 15.01.2011
Сообщений: 1
По умолчанию Разложение числа и замена цифры значением как оптимизировать

Добрый день форумчане. Прошу помочь с решением задачи Дейтела.
Программированием занялся недавно так что просьба не пинать сильно за код.
Текст задачи Программа должна считывать 4-х значное целое число и шифровать его следующим образом: "Заменить каждую цифру значением суммы этой цифры и 7 по модулю 10 затем поменять местами первую цифру и третью вторую и четвертую. Затем вывести зашифрованное целое число.
Прога вроде все считает за исключением: если первая цифра числа равна 0, и если третья равна 3 (тогда получается ноль и на выходе 3-х значное число). Не могу придумать как реализовать это не увеличивая разрядность числа до 8.
Ниже привожу код программы:
Код:
#include <stdio.h>
#include <iostream.h>
main()
{
int c=0,c1=0,c2=0,c3=0,c4=0,c5=0,c0, i=0;

cout << "Vvedite chislo";
cin >> c;
while (c!=0)
{c0=c%10+7;
if(c0>=10) c0-=10;
c/=10;
i++;
if(i==1) c4=c0;
if(i==2) c3=c0;
if(i==3) c2=c0;
if(i==4) c1=c0;
}
c5=10*(100*c3+10*c4+c1)+c2;

cout << "Zashifrovannoe chislo" << c5 << "\n";
cout << "shetchik " << i << "\n";
cout << "c1 " << c1 << "\n";
cout << "c2 " << c2 << "\n";
cout << "c3 " << c3 << "\n";
cout << "c4 " << c4 << "\n";
return 0;
}

Последний раз редактировалось Stilet; 15.01.2011 в 18:12.
Petrovich12 вне форума Ответить с цитированием
Старый 16.01.2011, 00:42   #2
-LeV-
Пользователь
 
Регистрация: 05.06.2010
Сообщений: 29
По умолчанию

Код:
cout.fill('0');
cout<<setw(4)<<c5<<"\n";
как-то так...
Код:
cout<<c3<<c4<<c1<<c2<<"\n";
или так...

Последний раз редактировалось -LeV-; 16.01.2011 в 00:54.
-LeV- вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разложение числа на 3 слогаемых azusdex Общие вопросы C/C++ 3 15.08.2010 00:31
Как перебрать все числа из заданных цифр, чтобы цифры в числах не повторялись? TwiX Общие вопросы Delphi 7 17.08.2009 16:56
Разложение числа на множители spamer Общие вопросы Delphi 5 01.01.2009 12:32
a=42339, как все цифры этого числа разделить пробелами??? MjRed Помощь студентам 6 19.12.2008 11:09
Разложение числа на слагаемые Oleg-vp Общие вопросы Delphi 5 30.10.2007 10:43