Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
AGPro
6 / 6 / 2
Регистрация: 03.04.2016
Сообщений: 90
#1

Небоскреб и стеклянный шарик - C++

06.04.2016, 01:58. Просмотров 2899. Ответов 35
Метки нет (Все метки)

В небоскребе n этажей. Известно, что если уронить стеклянный шарик с этажа номер p, и шарик разобьется, то если уронить шарик с этажа номер p+1, то он тоже разобьется. Также известно, что при броске с последнего этажа шарик всегда разбивается. Вы хотите определить минимальный номер этажа, при падении с которого шарик разбивается. Для проведения экспериментов у вас есть два шарика. Вы можете разбить их все, но в результате вы должны абсолютно точно определить этот номер.

Определите, какого числа бросков достаточно, чтобы заведомо решить эту задачу.

Формат входных данных
Программа получает на вход количество этажей в небоскребе.

Формат выходных данных
Требуется вывести наименьшее число бросков, при котором можно всегда решить задачу.

Примечание
Комментарий к первому примеру. Нужно бросить шарик со 2-го этажа. Если он разобьется, то бросим второй шарик с 1-го этажа, а если не разобьется - то бросим шарик с 3-го этажа.
Подсказки
1. Как следует действовать, если шарик был бы только один?
2. Пусть шариков два и мы бросили один шарик с этажа номер k. Как мы будем действовать в зависимости от того, разобьется ли шарик или нет?
3. Пусть f(n) - это минимальное число бросков, за которое можно определить искомый этаж, если бы в небоскребе было n этажей. Выразите f(n) через значения f(a) для меньших значений a.

Sample Input 1: 4
Sample Output 1: 2
Sample Input 2: 5
Sample Output 2: 3

n/3 достаточно.
Бросаем первый с этажа номер n/3. Если разбился, то бросаем второй по очереди с 1 этажа, потом со 2, ... до n/3 пока не разобьется. Так найдем этаж.
Если первый шар не разбился. бросаем его с этажа 2n/3. Если тут разбился, то бросаем второй с этажа n/3+1, потом с n/3+2, ... пока не разобьется.
Если 1 шар при падении с 2n/3 не разбился, то бросаем его с 2n/3+1, потом с 2n/3+2, ... пока не разобьется.

Примерно так, надо закодить в с++
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2016, 01:58
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Небоскреб и стеклянный шарик (C++):

В программе, где шарик ударяется об стены, заменить сам шарик
Вопрос в том, как заменить сам шарик на другой объект/текст. Вот например...

Неподвижный шарик
Пишу арканоид на C++ и SFML. Создал окно и шарик, также написал функцию...

Два шарик
Подскажите, плз, новичку, где в нижеследующей проге ошибки undefined...

Определить пройдет ли шарик в окошко
через прямоугольное окошко размером PxQ Винни пух хочет выбросить круглый...

Шарик, летающий по экрану и ударяющийся об его стенки
Тут такая тема: срочно нужна помощь в создании задания на С++. С помощью...

Написать программу, определяющую, пройдет ли шарик в окошко
Через прямоугольное окошко размером P x Q Винни-Пух хочет выбросить круглый...

35
Serg_o_Grey
76 / 76 / 38
Регистрация: 29.03.2016
Сообщений: 350
06.04.2016, 08:19 #2
может просто измерить силу при которой шарик трескается и приложить данное значение к известным постоянным (типа ускорение свободного падения). рассчитаем высоту. в итоге у нас будет один треснутый шарик и один целый.
и не надо ничего ломать!.

Добавлено через 1 минуту
AGPro,
а вообще вы лишили кодеров удовольствия составить свой алгоритм (который будет очень похож на ваш).
так что сами делайте
0
Valeryn
77 / 50 / 16
Регистрация: 17.05.2015
Сообщений: 264
06.04.2016, 09:50 #3
Дело было вечером, делать было нечего.
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
#include <iostream>
#include <time.h>
 
int main()
{
 
    srand(time(NULL));
    int house = rand() % 100 + 500; //генерируем дом высотой 500-600 этажей
    int destroy = rand() % (house - 10) + 10; //генерируем порог разрушения, в диапазоне от 10 до размера house.
    int ball;
    std::cout << "Введите количество шаров: ";
    std::cin >> ball; //вводим количество шаров
    std::cout << "\nРазмер дома: " << house << "\n"
              << "Количество шариков: " << ball << "\n";
    int current_destroy = house; //текущий, известный порог разрушения.
    int min = 0; //известный порог не разрушения.
    int count = 0; //счетчик попыток.
    for (int i = 0; i <= house; ++i ) {
        count++;
        //если шаров больше одного мы находимся не на последнем известном этаже разрушения
        // то бросаем мяч с высоты
        if (ball > 1 && i != current_destroy - 1)
            i = min + ((current_destroy - min) / 2);
 
        if (i >= destroy) {
            ball--;
            current_destroy = i;
            std::cout << "Шар разрушился. Осталось шаров: " << ball << " \n";
            if (ball == 0)
                break;
            i = min;
        }
        else {
            min = i;
        }
 
        if (current_destroy == min+1) {
            break;
        }
    }
 
    std::cout << "\n\n"
              <<  "Высотка разрушения: " << destroy
              << "\n Найденная высота разрушения " << current_destroy
              << "\n шаров осталось: " << ball
              << "\n количество ходов: " << count;
    std::cout << std::endl;
 
    return 0;
}
Код
valeryn@Admin-VLK ~ $ DEV/build-untitled3-Clang-Debug/untitled3 
Введите количество шаров: 5

Размер дома: 543
Количество шариков: 5
Шар разрушился. Осталось шаров: 4 


Высотка разрушения: 540
 Найденная высота разрушения 540
 шаров осталось: 4
 количество ходов: 9
valeryn@Admin-VLK ~ $
0
Serg_o_Grey
76 / 76 / 38
Регистрация: 29.03.2016
Сообщений: 350
06.04.2016, 09:54 #4
AGPro,
ну, или не сами
0
Valeryn
77 / 50 / 16
Регистрация: 17.05.2015
Сообщений: 264
06.04.2016, 10:06 #5
Даже лучше так, а то в той работе ошибка
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
55
56
57
#include <iostream>
#include <time.h>
 
int main()
{
 
    srand(time(NULL));
    int house = rand() % 100 + 500; //генерируем дом высотой 500-600 этажей
    int destroy = rand() % (house - 10) + 10; //генерируем порог разрушения, в диапазоне от 10 до размера house.
    int ball;
    std::cout << "Введите количество шаров: ";
    std::cin >> ball; //вводим количество шаров
    std::cout << "\nРазмер дома: " << house << "\n"
              << "Количество шариков: " << ball << "\n";
    int current_destroy = house; //текущий, известный порог разрушения.
    int min = 0; //известный порог не разрушения.
    int count = 0; //счетчик попыток.
    for (int i = 0; i <= house; ++i, ++count ) {
        std::cout << "== начало хода \n";
        //если шаров больше одного мы находимся не на последнем известном этаже разрушения
        // то бросаем мяч с высоты
        if (ball > 1 && i < current_destroy) {
            i = min + ((current_destroy - min) / 2);
            std::cout << "- идем на этаж " << i << "\n";
        }
        std::cout << "- бросаем шар с этажа " << i << "\n";
 
        if (i >= destroy) {
            ball--;
            current_destroy = i;
            std::cout << "- шар разрушился. Осталось шаров: " << ball << " \n";
            if (ball == 0)
                break;
            std::cout << "- спускаемся на этаж " << min << "\n";
            i = min-1; //-1 для из за инкримента
            if (current_destroy == min+1) {
                break;
            }
        }
        else {
            min = i;
        }
 
        if (current_destroy == min+1) {
            break;
        }
    }
 
    std::cout << "\n\n"
              <<  "Высотка разрушения: " << destroy
              << "\n Найденная высота разрушения " << current_destroy
              << "\n шаров осталось: " << ball
              << "\n количество ходов: " << count;
    std::cout << std::endl;
 
    return 0;
}
Код
valeryn@Admin-VLK ~ $ DEV/build-untitled3-Clang-Debug/untitled3 
Введите количество шаров: 5

Размер дома: 537
Количество шариков: 5
== начало хода 
- идем на этаж 268
- бросаем шар с этажа 268
- шар разрушился. Осталось шаров: 4 
- спускаемся на этаж 0
== начало хода 
- идем на этаж 134
- бросаем шар с этажа 134
== начало хода 
- идем на этаж 201
- бросаем шар с этажа 201
== начало хода 
- идем на этаж 234
- бросаем шар с этажа 234
- шар разрушился. Осталось шаров: 3 
- спускаемся на этаж 201
== начало хода 
- идем на этаж 217
- бросаем шар с этажа 217
== начало хода 
- идем на этаж 225
- бросаем шар с этажа 225
== начало хода 
- идем на этаж 229
- бросаем шар с этажа 229
- шар разрушился. Осталось шаров: 2 
- спускаемся на этаж 225
== начало хода 
- идем на этаж 227
- бросаем шар с этажа 227
== начало хода 
- идем на этаж 228
- бросаем шар с этажа 228
- шар разрушился. Осталось шаров: 1 
- спускаемся на этаж 227


Высотка разрушения: 228
 Найденная высота разрушения 228
 шаров осталось: 1
 количество ходов: 8
0
Fulcrum_013
Заблокирован
06.04.2016, 10:25 #6
используем метод дихотомии. Гарантированно имеем http://www.cyberforum.ru/cgi-bin/latex.cgi? {log}_{2}(n) расхреняченных шариков.
Если шариков дефицит а времени на дурогонство с избытком, то кидаем шарик с первого этажа, потом со второго, и т.д. пока не разобъется. Имеем гарантированно 1 разбитый шарик. Если шариков 2 то можно совместить два метода. Т.е бросаем со среднего этажа. Если разбился идем со вторым снизу до разбития. Если нет, то делим верхние этажи пополам и пока не разобьется, или не дойдем до одного этажа в отрезке, если таки мы его расхренячили, то идем со вторым шариком снизу последнего отрезка, пока и его не расхренячим.
0
AGPro
6 / 6 / 2
Регистрация: 03.04.2016
Сообщений: 90
06.04.2016, 14:08  [ТС] #7
Valeryn,
"Для проведения экспериментов у вас есть ДВА шарика!" Только два!

Добавлено через 21 минуту
Valeryn, Кстати в код что добавить надо, чтобы в консоли русскими буквами было видно?)

Добавлено через 8 минут
Valeryn, Да и в проге надо ввести только высоту небоскреба "n" и все.

Добавлено через 25 минут
Valeryn, прога ваша не правильно работает. Решение не верно.
0
Serg_o_Grey
76 / 76 / 38
Регистрация: 29.03.2016
Сообщений: 350
06.04.2016, 14:09 #8
AGPro, скажите пожалуйста, вам процесс программирования интересен?
0
AGPro
6 / 6 / 2
Регистрация: 03.04.2016
Сообщений: 90
06.04.2016, 14:35  [ТС] #9
Что-то не в порядке с условием разрушения. Надо по другому задать.
int destroy = rand() % (n_house - 10) + 10


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
#include <iostream>
#include <time.h>
 
int main()
{
 
    srand(time(NULL));
    int n_house, ball = 2;
    std::cin >> n_house; //вводим количество этажей
    int destroy = rand() % (n_house - 10) + 10; //???генерируем порог разрушения, в диапазоне от 10 до размера n_house.
    int current_destroy = n_house; //текущий, известный порог разрушения.
    int min = 0; //известный порог не разрушения.
    int count = 0; //счетчик попыток.
    for (int i = 0; i <= n_house; ++i, ++count ) {
            if (ball > 1 && i < current_destroy) {
            i = min + ((current_destroy - min) / 2);
                if (i >= destroy) {
                ball--;
                current_destroy = i;
                    if (ball == 0)
                    break;
            i = min-1; //-1 из за инкримента
            if (current_destroy == min+1) {
                break;
            }
        }
        else {
            min = i;
        }
 
        if (current_destroy == min+1) {
            break;
        }
    }
    }
    std::cout << count;
    return 0;
}
Добавлено через 8 минут
Со скобками напутал выше. Здесь ответы не правильные:

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
#include <iostream>
#include <time.h>
 
int main()
{
 
    srand(time(NULL));
    int n_house, ball = 2;
    std::cin >> n_house; //вводим количество этажей
    int destroy = rand() % (n_house - 10) + 10; //???генерируем порог разрушения, в диапазоне от 10 до размера n_house.
    int current_destroy = n_house; //текущий, известный порог разрушения.
    int min = 0; //известный порог не разрушения.
    int count = 0; //счетчик попыток.
    for (int i = 0; i <= n_house; ++i, ++count ) {
            if (ball > 1 && i < current_destroy) {
                i = min + ((current_destroy - min) / 2);}
                
            if (i >= destroy) {
                ball--;
                current_destroy = i;
                    if (ball == 0)
                    break;
                i = min-1; //-1 из за инкримента
                if (current_destroy == min+1) {
                break;
                }
            }
        
            else {
            min = i;
            }
 
        if (current_destroy == min+1) {
            break;
        }
    }
    std::cout << count;
    return 0;
}
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
7002 / 3294 / 448
Регистрация: 04.12.2011
Сообщений: 9,113
Записей в блоге: 5
06.04.2016, 15:08 #10
AGPro, я мыслю так:
Пусть пороговый этаж это k-тый этаж. Имея два шарика и используя "наивный" алгоритм мы гарантировано получаем максимум k/3+1 бросков. Первый шарик бросаем с третьего этажа (шаг соответствует количеству шариков плюс 1), потом с 6-го, потом где-то на m-том броске, он обязательно разобьётся и придётся бросить этажом ниже. Если разбился то, ответ ещё ниже этажом, потому, что 2-мя этажами ниже мы уже бросали, причём успешно. Ну, а если на m-1 броске он не разбился, то ответ равен m-1 и один шарик остаётся как премия. За гениальность.
Попытка применить дихотомию сократит половину ходов, но остальную половину придётся делать пошагово. Это значит, что дихотомия пролетает.
Написать прогу не составит труда. Главное, правилен ли предложенный алгоритм. Пока ничего лучшего не выдумывается.
зы через четыре надо кидать первый. А последний на 2 ниже. Тогда элемент дихотомии присутствует. А количество бросков не более k/4+1.

Добавлено через 14 минут
Цитата Сообщение от IGPIGP Посмотреть сообщение
А количество бросков не более k/4+1.
А количество бросков не более k/4+2. Это потому что он может не разбиться и потребуется ещё один бросок.
То есть кидаем первый: 4-й, 8-й, 12-й ... m-й (бэмц!)
кидаем второй: m-2
если Бэмц! ответ m-3
Если целый то нужно ещё кинуть m-1 и тогда будет ясно m-2 или m-1.//вот этот бросок
0
avgoor
1007 / 601 / 156
Регистрация: 05.12.2015
Сообщений: 1,686
06.04.2016, 15:14 #11
Что-то вы здесь перемудрили. Ответ из одной строчки.
По порядку.
1) Очевидно, что функция необходимого кол-ва бросков, от высоты дома - неубывающая.
Т.е. Мы можем найти такие высоты, при которых просто посчитать кол-во бросков, и все, что между округляем в сторону большего.
2) Нам необходим минимизировать общее кол-во бросков. Т.е. кол-во бросков первого, пока он не разбился + кол-во бросков второго.
Очевидно, что для минимизации бросков первый шарик бросается не равныи промежутками, Т.к. если мы бросили 1 шарик m раз то остается n-m бросков второго шарика, где n - минимально необходимое кол-во бросков.
Итого Если высота дома вписывается в сумму арифметической прогрессии - ответ - n дальше см. пункт (1)

Итого решая уравнение получаем
C++
1
int n=ceil(sqrt(1.0+8*h)*0.5-0.5);
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
7002 / 3294 / 448
Регистрация: 04.12.2011
Сообщений: 9,113
Записей в блоге: 5
06.04.2016, 15:18 #12
Цитата Сообщение от avgoor Посмотреть сообщение
Что-то вы здесь перемудрили. Ответ из одной строчки.
Не понимаю.
Пусть этажей в доме n=100, а искомый - 49-й. Бросив первый шарик с 50-го этажа мы его разобьём. Дальше второй будем бросать с певого до 49-го пошагово. То есть максимум n/2 бросков?
0
avgoor
1007 / 601 / 156
Регистрация: 05.12.2015
Сообщений: 1,686
06.04.2016, 15:30 #13
IGPIGP, 100 плохое число (см п.1), пусть будет 105.
105=1+2+...+14.
Тогда:
Первый пока не разбился кидаем с 14, 27, 39, 50, 60, 69, 77, 84, 90, 95, 99, 102, 104.
Второй шарик кидаем последовательно с предыдущего перед разбившимся.
Итого: Максимум 14 бросков (В том случае если искомый этаж 13, 26, 38,... - это в худшем случае)
Для 100 тоже максимум 14.
2
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
7002 / 3294 / 448
Регистрация: 04.12.2011
Сообщений: 9,113
Записей в блоге: 5
06.04.2016, 16:08 #14
Цитата Сообщение от avgoor Посмотреть сообщение
Первый пока не разбился кидаем с
Хм... Интересная идея! Получается, что с увеличением числа попыток мы сокращаем шаг, чтобы выровнять затраты на поиск во всём интервале. Тогда действительно получается быстро для очень больших этажей.
0
zer0mail
2451 / 2085 / 216
Регистрация: 03.07.2012
Сообщений: 7,566
Записей в блоге: 1
06.04.2016, 16:13 #15
Старая известная задача. Интервал между этажами с каждым броском уменьшается на 1.Тогда, если шарик разобьется не на самом последнем шаге, необходимое количество бросков (в худшем случае) одинаково и равно нижнему этажу цепочки.
В данной формулировке за 14 бросков определяется этаж для 106 этажного дома. За 15 - для 121 этажного.
0
AGPro
6 / 6 / 2
Регистрация: 03.04.2016
Сообщений: 90
06.04.2016, 17:36  [ТС] #16
zer0mail, Если вы разбрались, как это все закодить?
0
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
4371 / 2346 / 654
Регистрация: 18.10.2014
Сообщений: 3,996
06.04.2016, 17:48 #17
Цитата Сообщение от zer0mail Посмотреть сообщение
Старая известная задача.
Не согласен!!!1 В "старой известной" были тарелочки. А здесь - шарики.
1
AGPro
6 / 6 / 2
Регистрация: 03.04.2016
Сообщений: 90
06.04.2016, 17:56  [ТС] #18
avgoor, int n=ceil(sqrt(1.0+8*h)*0.5-0.5); Это не катит!

Эксперты! Код-то поправьте тогда.
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
7002 / 3294 / 448
Регистрация: 04.12.2011
Сообщений: 9,113
Записей в блоге: 5
06.04.2016, 18:54 #19
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
Не согласен!!!1 В "старой известной" были тарелочки. А здесь - шарики.
Пришло время экономить.
0
Valeryn
77 / 50 / 16
Регистрация: 17.05.2015
Сообщений: 264
07.04.2016, 02:05 #20
Цитата Сообщение от AGPro Посмотреть сообщение
Что-то не в порядке с условием разрушения. Надо по другому задать.
int destroy = rand() % (n_house - 10) + 10
Что тут не так? Генерируем этаж, на котором шарик разбивается, в диапазоне 10-500+.
Указываем сколько шариков (их может быть 1 а может быть 100).

Цитата Сообщение от avgoor Посмотреть сообщение
Первый пока не разбился кидаем с 14, 27, 39, 50, 60, 69, 77, 84, 90, 95, 99, 102, 104.
Наверное что-то вроде этого?
Кликните здесь для просмотра всего текста
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
55
56
57
#include <iostream>
#include <time.h>
 
int main()
{
 
    srand(time(NULL));
    int house = rand() % 100 + 500; //генерируем дом высотой 500-600 этажей
    int destroy = rand() % (house - 10) + 10; //генерируем порог разрушения, в диапазоне от 10 до размера house.
    int interval;
    int ball;
    std::cout << "Введите количество шаров: ";
    std::cin >> ball; //вводим количество шаров
    std::cout << "Введите интервал : ";
    std::cin >> interval;
    std::cout << "\nРазмер дома: " << house << "\n"
              << "Количество шариков: " << ball << "\n";
    int current_destroy = house; //текущий, известный порог разрушения.
    int min = 0; //известный порог не разрушения.
    int count = 0; //счетчик попыток.
    for (int i = 0; i <= house; ++count) {
        std::cout << "== начало хода \n";
        if (i + interval > house) {
            ++i;
        }
        else if (ball > 1) {
            i += interval;
        }
        else {
            ++i;
        }
 
        std::cout << "- бросаем шар с этажа " << i << "\n";
        if (i >= destroy) {
            --ball;
            current_destroy = i;
            i = min;
            std::cout << "- шар разрушился. Осталось шаров: " << ball << " \n";
            std::cout << "- идем на этаж " << i << "\n";
        }
        else {
            min = i;
        }
 
        if (ball == 0 || i >= house)
            break;
    }
 
    std::cout << "\n\n"
              <<  "Высота разрушения: " << destroy
              << "\n Найденная высота разрушения " << current_destroy
              << "\n шаров осталось: " << ball
              << "\n количество ходов: " << count;
    std::cout << std::endl;
 
    return 0;
}

Код
valeryn@Admin-VLK ~/DEV/build-untitled3-Clang-Debug $ ./untitled3 
Введите количество шаров: 2
Введите интервал : 14

Размер дома: 539
Количество шариков: 2
== начало хода 
- бросаем шар с этажа 14
== начало хода 
- бросаем шар с этажа 28
== начало хода 
- бросаем шар с этажа 42
- шар разрушился. Осталось шаров: 1 
- идем на этаж 28
== начало хода 
- бросаем шар с этажа 29
== начало хода 
- бросаем шар с этажа 30
== начало хода 
- бросаем шар с этажа 31
== начало хода 
- бросаем шар с этажа 32
== начало хода 
- бросаем шар с этажа 33
== начало хода 
- бросаем шар с этажа 34
== начало хода 
- бросаем шар с этажа 35
== начало хода 
- бросаем шар с этажа 36
== начало хода 
- бросаем шар с этажа 37
== начало хода 
- бросаем шар с этажа 38
== начало хода 
- бросаем шар с этажа 39
== начало хода 
- бросаем шар с этажа 40
== начало хода 
- бросаем шар с этажа 41
- шар разрушился. Осталось шаров: 0 
- идем на этаж 40


Высота разрушения: 41
Найденная высота разрушения 41
 шаров осталось: 0
 количество ходов: 15
0
07.04.2016, 02:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2016, 02:05
Привет! Вот еще темы с решениями:

Придумать формулу/алгоритм, который будет определять в какой из пяти корзин расположен шарик
Доброго времени суток. Помогите придумать формулу/алгоритм, который будет...

Нацелить пушку так, чтобы шарик ударился сначала о стену, а затем попал в цель
Всем привет. Вынужден в очередной раз просить помощи. Задача В начале...

Найти вероятность того, что наугад вытянутый шарик из второй урны будет больше, чем шарик с первой урны
Доброе время суток, проконсультируйте по задачке. Есть две урны, в которых...

Стеклянный обьект
Как в дельфи с помощью опенгл стеклянную трубку например построить?


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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