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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
slava9480
0 / 0 / 0
Регистрация: 21.05.2014
Сообщений: 12
#1

Начертить 100 окружностей случайного диаметра и цвета - C++

05.07.2014, 15:50. Просмотров 775. Ответов 8
Метки нет (Все метки)

Написать программу, которая вычерчивает на экране узор из 100 окружностей случайного диаметра и цвета.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.07.2014, 15:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Начертить 100 окружностей случайного диаметра и цвета (C++):

Вывести на экран узор из 100 окружностей случайного диаметра и цвета - C++
Составить программу, которая выводит на экран узор из 100 окружностей случайного диаметра и цвета

Написать программу, которая вычерчивает на экране узор из 50 прямоугольников случайного размера и цвета - C++
Написать программу, которая вычерчивает на экране узор из 50 прямоугольников случайного размера и цвета. Зарание большое спасибО!

Даны координаты центров n окружностей и их радиусы. Определить число пересекающихся окружностей - C++
Допуск к экзамену в субботу а не решено еще 5 заданий по С++ 1.Даны координаты центров n окружностей и их радиусы. Определить число...

Генерация случайного числа, максимально случайного - C++
Добрый день, задался вопросом как получить случайное число, но не псевдо-случайное по идее функции rand() и srand(time(NULL))...

Модуль GRAPH: Начертить на экране узор из 100 окружностей случайного диаметра и цвета - Turbo Pascal
6. Написать программу, которая вычерчивает на экране узор из 100 окружностей случайного диаметра и цвета. Добавлено через 12 часов 49...

Узор из 100 окружностей случайного диаметра и цвета - Turbo Pascal
%-)Написать программу, которая выводит на экране узор из 100 колец случайного диаметра, толщины и цвета и имеющих разные центры.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
NanoBreaker
23 / 23 / 7
Регистрация: 11.07.2013
Сообщений: 89
05.07.2014, 18:14 #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
39
40
41
42
43
#include <Windows.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
 
HDC hDC = GetDC(GetConsoleWindow());
HPEN Pen = CreatePen(PS_SOLID, 0.1, RGB(255, 255, 255));
HGDIOBJ hpenOld;
 
//функция которая чертит наш круг
void drawCircle(int r, float x_, float y_)
{
    //используем уравнение окружности, выраженное через тригонометрию
    for (float j = 0; j <= 359; j++)
    {
        float x = x_ + r * cos(j);
        float y = y_ + r * sin(j);
        MoveToEx(hDC, x, y, NULL);
        x = x_ + r * cos(j + 1);
        y = y_ + r * sin(j + 1);
        LineTo(hDC, x, y);
    }
}
 
int main()
{
    srand(time(NULL));
    SelectObject(hDC, Pen);
 
    //цикл для черчения 100 окружностей
    for (int i = 0; i < 100; i++)
    {
        //каждый раз меняем цвет пера
        Pen = CreatePen(PS_SOLID, 1, RGB(rand() % 255, rand() % 255, rand() % 255)); //логическое перо с заданным стилем, шириной и цветом
        hpenOld = (HPEN)SelectObject(hDC, Pen);
 
        //рисуем с рандомными координатами и радиусом
        drawCircle(rand() % 10 + 1, rand() % 600, rand() % 250 + 10);
    }
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
slava9480
0 / 0 / 0
Регистрация: 21.05.2014
Сообщений: 12
06.07.2014, 11:16  [ТС] #3
C++
1
2
3
4
MoveToEx(hDC, x, y, NULL);
        x = x_ + r * cos(j + 1);
        y = y_ + r * sin(j + 1);
        LineTo(hDC, x, y)
ошибку выдает.
0
NanoBreaker
23 / 23 / 7
Регистрация: 11.07.2013
Сообщений: 89
06.07.2014, 11:47 #4
slava9480, Какая у тебя среда разработки - IDE? И что за ошибка? Их существует великое множество, но увы я не экстрасенс чтобы понять какая именно у тебя, поточнее можно?
0
slava9480
0 / 0 / 0
Регистрация: 21.05.2014
Сообщений: 12
06.07.2014, 12:13  [ТС] #5
Dev-C++
не знаю какие ошибки. я не разбираюсь в этом.

Добавлено через 3 минуты
43:2 C:\Users\Dell\Desktop\Новый текстовый документ.cpp [Warning] no newline at end of file
21 C:\Users\Dell\Desktop\Новый текстовый документ.cpp [Warning] passing `float' for converting 3 of `BOOL LineTo(HDC__*, int, int)'
21 C:\Users\Dell\Desktop\Новый текстовый документ.cpp [Warning] passing `float' for converting 2 of `BOOL LineTo(HDC__*, int, int)'
18 C:\Users\Dell\Desktop\Новый текстовый документ.cpp [Warning] passing `float' for converting 3 of `BOOL MoveToEx(HDC__*, int, int, tagPOINT*)'
18 C:\Users\Dell\Desktop\Новый текстовый документ.cpp [Warning] passing `float' for converting 2 of `BOOL MoveToEx(HDC__*, int, int, tagPOINT*)'
C:\Users\Dell\Desktop\Новый текстовый документ.cpp In function `void drawCircle(int, float, float)':
7 C:\Users\Dell\Desktop\Новый текстовый документ.cpp [Warning] passing `double' for converting 2 of `HPEN__* CreatePen(int, int, COLORREF)'
6 C:\Users\Dell\Desktop\Новый текстовый документ.cpp `GetConsoleWindow' was not declared in this scope
0
NanoBreaker
23 / 23 / 7
Регистрация: 11.07.2013
Сообщений: 89
06.07.2014, 13:23 #6
slava9480, Главная проблема это "6 C:\Users\Dell\Desktop\Новый текстовый документ.cpp `GetConsoleWindow' was not declared in this scope", но всё как надо, проблем не должно быть, сейчас сам попытался нарисовать хоть что-то в Dev-C++, результат - куча ошибок. Для избавления от предупреждений, перед переменными, которые мы передаём в функцию можно добавить (int). Но вот как решить остальное я не знаю, советую поменять IDE. Используй Qt Creator или Visual Studio, там есть помощник синтаксиса, сразу подчёркивает ошибки и описывает их, для начинающих самое то.
0
slava9480
0 / 0 / 0
Регистрация: 21.05.2014
Сообщений: 12
06.07.2014, 13:33  [ТС] #7
а у тебя все работает?
0
NanoBreaker
23 / 23 / 7
Регистрация: 11.07.2013
Сообщений: 89
06.07.2014, 14:20 #8
slava9480, В Visual Studio - всё работает.
0
nmcf
5319 / 4639 / 1551
Регистрация: 14.04.2014
Сообщений: 18,452
06.07.2014, 14:25 #9
Лучше создать приложение с формой.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.07.2014, 14:25
Привет! Вот еще темы с ответами:

Как нарисовать на форме 100 окружностей случайного диаметра и цвета? - C#
Ребята, объясните каким образом можно реализовать подобное в C#. Никогда не работал с такими заданиями. &quot;Написать программу, которая...

Написать программу, которая вычерчивает на экране узор из 100 окружностей случайного диаметра и цвета. - Turbo Pascal
Написать программу, которая вычерчивает на экране узор из 100 окружностей случайного диаметра и цвета.

Составить программу, которая выводит на экран узор из 100 окружностей случайного диаметра и цвета - Pascal ABC
:cry:Составить программу, которая выводит на экран узор из 100 окружностей случайного диаметра и цвета.

Вывести на экране узор из 5 концентрических окружностей различного диаметра и цвета - Pascal ABC
4.Написать программу, которая вычерчивает на экране узор из 5 концентрических окружностей различного диаметра и цвета. Кто нибудь...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
06.07.2014, 14:25
Ответ Создать тему
Опции темы

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