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

Пояснения условия - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как заполнить вектор в структуре? http://www.cyberforum.ru/cpp-beginners/thread332143.html
как заполнить вектор в структуре?? struct pupil { vector <string> a; } я делал так: pupil f; f.a.push_back("qwerty"); что не правильно, подскажите как надо P.S. Пытался сделать массив строк ...
C++ Двумерный массив в динамической памяти как поле класса Здравствуйте! Вот так можно описать двумерный массив в дин.памяти. class nameClass { public: MapPlaceTp ** roomMap; setArr ( ); }; http://www.cyberforum.ru/cpp-beginners/thread332132.html
перегрузка оператора присваевания C++
Не могу разобраться как перегрузить оператор присваивания так чтобы выводило правильно то есть a = 15; c = 7.8; d = "50"; d=a+d; //ответ: 65 а данный код выводит
C++ Вычисление корней многочлена
нужно написать программу которая вычисляет корни многочлена. Степень многочлена мы задаём.
C++ повторное вполнение действия http://www.cyberforum.ru/cpp-beginners/thread332068.html
Мне стал интересно как сделать чтобы например дисковод окрывался и закрывался каждые 30 секунд в течении 10 минут пожалуста выложите исходники с комментариями
C++ Socks5 Server Здраствуйте! Необходима для личных целей написать Socks5 Server с авторизацией. Помогите, с чего начать, што использовать, может какие библиотеки? Зарание спасибо =) подробнее

Показать сообщение отдельно
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 692
13.07.2011, 12:23  [ТС]
Второй день сижу над этой задачей. Вот что придумал

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include<iostream>
using namespace std;
class a
{private:
int b,d[10000],c,f[1000],m[1000],k,i[1000],p[1000],o[10000];
public:
void fc0(a& a1)
{cout<<"Введите знаменатель --> ";
cin>>a1.b;
}
void fc1(a& a1)
{for(int q=0;q<a1.b-1;q++)
{a1.d[q]=q+1;
 a1.o[q]=a1.b;
a1.c=a1.d[q];
a1.k=a1.o[q];
do{
   a1.c = a1.c % a1.k;
  if (a1.c == 0)
  {a1.c=a1.k;
break;}
a1.k = a1.k % a1.c;
if (a1.k == 0)
{a1.c=a1.c;
break;}
 }while (true);
a1.f[q]=a1.d[q]/a1.c;
a1.m[q]=a1.o[q]/a1.c;
cout<<a1.f[q]<<"/"<<a1.m[q]<<endl<<endl;
}int j=0,h=0,s;
for(s=0;s<a1.b;)
{
a1.f[h]=a1.f[j]*a1.f[s];
a1.m[h]=a1.m[j]*a1.m[s];
if(s==a1.b-2)
{s=0;
j=j+1;}
if(j>=a1.b)
{break;}
cout<<a1.f[h]<<"/"<<a1.m[h]<<endl;
s=s+1,h=h+1;
}
}
 
};
int main ()
{setlocale(LC_ALL,"Rus");
a a1;
a1.fc0(a1);
a1.fc1(a1);
cin.get();
cin.get();
return 0;
}
Этот код выполняется так же как и должен в задаче, но что-то он мудрит с конечными знаменателями. Увеличивает их в 6 раз. Все проблемы начинаются в этом цикле


C++
1
2
3
4
5
6
7
8
9
10
11
12
for(int j=0,h=0,s=0;s<a1.b;)
{
a1.f[h]=a1.f[j]*a1.f[s];
a1.m[h]=a1.m[j]*a1.m[s];
if(s==a1.b-2)
{s=0;
j=j+1;}
if(j>=a1.b)
{break;}
cout<<a1.f[h]<<"/"<<a1.m[h]<<endl;
s=s+1,h=h+1;
}
Вроде даже вот в этой строчке

C++
1
a1.m[h]=a1.m[j]*a1.m[s];


Подскажите в чем ошибка.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru