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

Олимпиадные задачи :/ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ В какой кодировке getch() возвращает символ? http://www.cyberforum.ru/cpp-beginners/thread432969.html
#include <iostream> #include <Windows.h> #include <conio.h> int main() { SetConsoleOutputCP(1251); char ch; do {
C++ Почему работает не правильно? Не могу понять почему эта простенькая программка не работает как надо,подскажите почему?К примеру я ввожу 12+7= и мне выдаёт 127==? // calc.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "conio.h" #include "iostream" #include "locale.h" using namespace std; http://www.cyberforum.ru/cpp-beginners/thread432968.html
Структуры C++
Дан эллипс. Найти его площадь.(Описать тип- эллипс).????
Найти среднее арифметическое C++
Задачка... Вводится последовательность из N целых чисел. Найти среднее арифметическое его цифр (функцией оформить определения среднего арифметического цифр числа).
C++ Подпрограмма http://www.cyberforum.ru/cpp-beginners/thread432917.html
Составить подпрограмму,переписывающую старую строку в новую,так чтобы все символы были через пробел
C++ Нужно перевести программу из Паскаля в С++ К сожалению С++ только начали изучать, а программ задали много Delphi знаю хорошо Задача 1.Составить программу упорядочения по возрастанию значений в трёх переменных. Решение на Паскале uses crt; Var a,b,c,x: real; Begin clrscr; Write('Введите первое число =');ReadLn(a); подробнее

Показать сообщение отдельно
x1Mike7x
216 / 129 / 6
Регистрация: 06.11.2010
Сообщений: 234
22.01.2012, 17:01     Олимпиадные задачи :/
3я решается перебором х/у для Р2 и Р1, результат: Р2 - Р1.
Рассмотрим все х, которые лежат в диапазоне [ 0; R ]. Для каждого х найде соответсвующий у, который является максимальным, при этом находящимся в круге, этот игрик есть число точек в круге для выбранного х ( точнее не в круге, а в 1/4 круга - если нарисовать на листочке, то станет ясно почему ).
Найдём количество у для Р2 ( все точки для заданого х от центра парка до его границы ), а также количесвто у для Р1 ( все точки для х от центра фонтана до границы фонтана ), прибавим разницу к результату.
+ еще проверяем, есть ли точка на границе, если так, то просто инкрементируем у.
В конце умножим результат на 4, потому что мы нашли число деревьев (точек) только в 1,4 круга.
Примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
cin >> R1 >> R2;
for ( x = 0; x < R2; ++x )
{
    y2 = ( int )( sqrt( R2 * R2 - x * x ) + eps );
    y1 = ( int )( sqrt( R1 * R1 - x * x ) + eps );
 
    y2 -= ( R2 * R2 == x * x + y2 * y2 );
    y1 -= ( R1 * R1 == x * x + y1 * y1 );
 
    Result += y2 - y1;
}
Result *= 4;
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru