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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2010, 18:35   #1
<DefendeR>
 
Аватар для <DefendeR>
 
Регистрация: 05.10.2009
Сообщений: 5
По умолчанию C++ циклы

вот посмотрите , где неправильно исправьте пожалуйста
Задание:
1. Определить количество удвоенных нечетных чисел среди данных 150 целых чисел.
2. Перевести число из десятичной системы счисления в восьмеричную.

мое решение:
Цитата:
#include<iostream.h>
#include<iomanip.h>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
main(void)
{
int roll=1,summ=0;
cout<<"vse CHISLA"<<endl<<endl;
for(int roll=1;roll<=150;roll++){
int fase=1+rand()%20000;cout<<fase<<" ";
if(fase%2==0)
{fase=fase/2;
if(fase%2 != 0){summ++;}}}
cout<<endl<<endl<<"Iz nih udvoennie ne4etnie = "<<summ<<endl;

getch();
}

Код:
#include<iostream.h>
#include<iomanip.h>
#include<conio.h>
#include<math.h>
          main(void)
{ 
    int a1=1,a2=8,a3=64,a4=512,a5=4096,a6=32768,a7=262144,a8=2097152,a9=16777216,a0=134217728;
    int x,b1,b2,b3,b4,b5,b6,b7,b8,b9,c1,c2,c3,c4,c5,c6,c7,c8;
   cin>>x;cout<<endl;
   
   if((x<=a0)&&(x>=a9)){b1=x/a9;c1=x%a9; b2=c1/a8;c2=c1%a8; b3=c2/a7;c3=c2%a7; b4=c3/a6;c4=c3%a6; b5=c4/a5;c5=c4%a5; b6=c5/a4;c6=c5%a4; b7=c6/a3;c7=c6%a3; b8=c7/a2;c8=c7%a2; b9=c8/a1;
   cout<<" "<<b1<<" "<<b2<< " "<<b3<<" "<<b4<<" "<<b5<<" "<<b6<<" "<<b7<<" "<<b8<<" "<<" "<<b9<<endl;}
   
   if((x<=a9)&&(x>=a8)){b1=x/a8;c1=x%a8; b2=c1/a7;c2=c1%a7; b3=c2/a6;c3=c2%a6; b4=c3/a5;c4=c3%a5; b5=c4/a4;c5=c4%a4; b6=c5/a3;c6=c5%a3; b7=c6/a2;c7=c6%a2; b8=c7/a1;
   cout<<" "<<b1<<" "<<b2<< " "<<b3<<" "<<b4<<" "<<b5<<" "<<b6<<" "<<b7<<" "<<b8<<" "<<endl;}
   
   if((x<=a8)&&(x>=a7)){b1=x/a7;c1=x%a7; b2=c1/a6;c2=c1%a6; b3=c2/a5;c3=c2%a5; b4=c3/a4;c4=c3%a4; b5=c4/a3;c5=c4%a3; b6=c5/a2;c6=c5%a2; b7=c6/a1;
   cout<<" "<<b1<<" "<<b2<< " "<<b3<<" "<<b4<<" "<<b5<<" "<<b6<<" "<<b7<<" "<<endl;}
   
   if((x<=a7)&&(x>=a6)){b1=x/a6;c1=x%a6; b2=c1/a5;c2=c1%a5; b3=c2/a4;c3=c2%a4; b4=c3/a3;c4=c3%a3; b5=c4/a2;c5=c3%a2; b6=c5/a1;
   cout<<" "<<b1<<" "<<b2<< " "<<b3<<" "<<b4<<" "<<b5<<b6<<endl;}
   
   if((x<=a6)&&(x>=a5)){b1=x/a5;c1=x%a5; b2=c1/a4;c2=c1%a4; b3=c2/a3;c3=c2%a3; b4=c3/a2;c4=c3%a2;b5=c4/a1;
   cout<<" "<<b1<<" "<<b2<< " "<<b3<<" "<<b4<<" "<<b5<<endl;}
  
   if((x<=a5)&&(x>=a4)){b1=x/a4;c1=x%a4; b2=c1/a3;c2=c1%a3; b3=c2/a2;c3=c2%a2; b4=c3/a1;c4=c3%a1;
   cout<<" "<<b1<<" "<<b2<< " "<<b3<<" "<<b4<<" "<<endl;}
   
   if((x<=a4)&&(x>=a3)){b1=x/a3;c1=x%a3; b2=c1/a2;c2=c1%a2; b3=c2/a1;c3=c2%a1;
   cout<<" "<<b1<<" "<<b2<< " "<<b3<<endl;}
   
   if((x<=a3)&&(x>=a2)){b1=x/a2;c1=x%a2;b2=c1/a1;c2=c1%a1;
   cout<<" "<<b1<<" "<<b2<<endl;}
  
   if((x<=a2)&&(x>=a1)){b1=x/a1;c1=x%a1;
   cout<<" "<<b1<<" "<<endl;}
   
getch();
}
<DefendeR> вне форума Ответить с цитированием
Старый 12.01.2010, 18:23   #2
val_nnm
Форумчанин
 
Регистрация: 18.10.2009
Сообщений: 185
По умолчанию

Второе задание можно сделать вот так:
Код:
#include<iostream.h>
#include<iomanip.h>
#include<conio.h>
#include<math.h>
main(void)
{ 
  int x;
  cin>>x;cout<<endl;
  int digits[20];
  int digitsCount=0;
  int TempX = x;
  while (TempX>0)
  {
    digits[digitsCount] = TempX%8;
    TempX /= 8;
    digitsCount++;
  }
  if (digitsCount==0)
  {
    digitsCount = 1;
    digist[0] = 0;
  }
  cout<<"Base10:"<<x<<endl;
  cout<<"Base8:";
  for (int i=digitsCount-1;i>=0;i--)
  {
    cout<<digits[i];
  }
}
На С# пишу лучше чем на русском.
"У меня правильнописание хромает. Оно хорошее, но почему-то хромает."
val_nnm вне форума Ответить с цитированием
Старый 14.01.2010, 23:13   #3
evgenij9241
Пользователь
 
Аватар для evgenij9241
 
Регистрация: 14.01.2010
Сообщений: 26
По умолчанию

Тут если больше одного действия надо ставить{}, а то програма будет работать не правильно.
-----------------------------Чем смог тем помог.--------------------------------------
evgenij9241 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Циклы Mizantrop Помощь студентам 0 04.11.2009 18:32
циклы Mizantrop Помощь студентам 0 04.11.2009 18:06
Циклы dinamit768 Помощь студентам 0 30.10.2009 20:19
Циклы Doublefaced Помощь студентам 2 01.07.2009 20:29