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

Задачка на виртуальный метод - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Visual C++ Работа в MFC http://www.cyberforum.ru/cpp-beginners/thread41306.html
Всем привет. Кто может помочь с написанием программы вот такого типа http://www.cyberforum.ru/attachment.php?attachmentid=5543&stc=1&d=1245585261 . Вот примерно код. Все в класс визарде ввел правильно и все равно программа не рабочая. Может чего то не допил? помогите пожалуйста Вот сам код при нажатии на кнопку перевести : /////Описание в Сlass Wizard //EDIT1 - my_varconvert //EDIT2 -...
C++ Перевод арабских цифр в римские с++ Подскажите как перевести арабские цифры в римские... Например 12345 -> I II III IV V Заранее спасибо http://www.cyberforum.ru/cpp-beginners/thread41292.html
C++ Сжать строку, заменяя несколько подряд стоящих пробелов одним
Помогите кто чем может: 1. Найти два наибольших элемента массива целых чисел. Написать процедуру и пример обращения к ней. Массив и его фактический размер – параметры. 2. Дан массив целых чисел, записать в этот же массив сначала все отрицательные числа, затем все нули и затем положительные. Относительный порядок следования чисел каждой группы должен быть сохранен. Массивы и их фактические...
работа с файоами таблицами и со списками C++
нужно вместо этой строчки strcpy(table_reis.viezd_data->data_viezda,tmp); написать код для того чтобы была не таблица а односвязный список.. причем каждому table_reis должен соответсвовать список.. как это осуществить ? int Put_Reis(FILE *f_reis, MAP *new_marsh,char*tek_data) { int i, j, reis_count,reis_max,chislo_int,god_int,mesyac_int; char chislo, god,mesyac, tmp; I_REIS...
C++ Builder Как считать строчки из Мемо http://www.cyberforum.ru/cpp-beginners/thread41253.html
Доброго Времени суток, кто-нибудь может подсказать, как считать строчки из мемо (это цифры). Они нужны мне как числа для дальнейших вычислений. Вот кусочек программы double x,y,z; { x=StrToFloat(Edit5->Text); y=StrToFloat(Edit6->Text); z=StrToFloat(Edit7->Text);
C++ Вычисление корня нелинейного уравнения методом Золотого сечения. Всем вечер добрый, нужен алгоритм поиска корня нелинейного уравнения методом Золотого сечения. Никто с подобным не сталкивался? У самого ничего не получается, уже незнаю чего "нашаманить" такого что бы корень находился... Добавлено через 6 минут 13 секунд int g; g=0; // количество интераций double t, y1, y2, y; t = (1.+sqrt(5.))*0.5; double a, b, x0, x1, x2, x; a =... подробнее

Показать сообщение отдельно
NimFa
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 14
21.06.2009, 17:10     Задачка на виртуальный метод
5 олимпийских окружностей движутся вниз по экрану и меняют свои цвета (как только доходят вниз, появляются вверху экрана и двигаются дальше вниз). Фигура имеет рамку из 2-х прямоугольников.
Вот пример подобной задачи:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<iostream.h>
#include<math.h>
#include<graphics.h>
#include<dos.h>

class fig
{protected:
int x0,y0,raz,color,n,m;

public:
fig()
{};


virtual void param()=0;
virtual void draw()=0;

};

class squareublic fig
{protected:
int dy,x0,y0,raz,color;
public:
square():fig()
{
y0=470;
dy=-10;
x0=400;
raz=random(100);
color=random(16);
};
void param();
void draw();

};

class cirublic fig
{protected:
int dy,x0,y0,raz,color;
public:
cir():fig()
{
dy=10;
y0=10;
x0=random(100);
raz=random(50);
color=random(16);
};
void param();
void draw();

};

void square:aram()
{
if (y0==470) dy=-10;
if (y0==10) dy=10;
y0=y0+dy;
}
void cir:aram()
{
if (y0==470) dy=-10;
if (y0==10) dy=10;
y0=y0+dy;

}
void cir::draw()
{setcolor(color);
circle(x0,y0,raz);
setfillstyle(1,color);
floodfill(x0,y0,color);
}

void square::draw()
{setcolor(color);
rectangle(x0-raz,y0-raz,x0+raz,y0+raz);
setfillstyle(1,color);
floodfill(x0,y0,color);
}


void main()
{ int i,j,n;
randomize();

square kv[20];
cir clr[20];
fig *f[40];

int gd,gm,er;
detectgraph(&gd,&gm);
initgraph(&gd,&gm,"d:\\BORLANDC\\BGI");
er=graphresult();
if (er != grOk) grapherrormsg(er);

printf("vvedite razmernabora n=");
scanf("%d",&n);

for (i=0;i<n;i++)
{f[i]=&clr[i];
f[i+n]=&kv[i];
}

while(!kbhit())
{
cleardevice();
for (i=0;i<n;i++)
{
f[i]->param();
f[i]->draw();
f[i+n]->param();
f[i+n]->draw();

}
delay(50);
}
closegraph();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru