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

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

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

Задачка для реализации в С++ - C++

21.05.2014, 13:35. Просмотров 264. Ответов 1
Метки нет (Все метки)

Производится стрельба двумя снарядами по k бакам с го-
рючим (k>2), расположенным рядом друг с другом в одну ли-
нию. Каждый снаряд независимо от других попадает в первый
бак с вероятностью p1 во второй – с вероятностью р2 и т. д. Для
воспламенения баков требуется два попадания в один и тот же
бак или два попадания в соседние баки. Оценить вероятность
воспламенения баков. Как написать такую в С++ ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2014, 13:35     Задачка для реализации в С++
Посмотрите здесь:
C++ Выделение памяти в куче для строки для реализации длинной арифметики
Подобрать контейнер для реализации C++
Библиотеки под С++ для реализации SOAP 1.2 C++
Задачка для С++ C++
Дерево выбора для реализации внешней сортировки C++
Создать класс для реализации комплексных чисел C++
Создать класс для реализации динамического массива C++
C++ Описать класс для реализации двумерного массива
Написать класс для реализации полей Галуа C++
C++ задачка для зачета
Задачка для мозга C++
Написать код программы для реализации класса human C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Shelby_ph
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 26
30.05.2014, 09: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
#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
 
int main()
{
using namespace std;
int num_of_tanks;
cout « "Enter number of tanks:\n";
cin » num_of_tanks;
vector<double> tanks(num_of_tanks);
cout « "enter posibilities for each tank:\n";
for (int i = 0; i < tanks.size(); i++)
{
cout « "posibility for " « i + 1 « ") tank: ";
cin » tanks[i];
}
if (accumulate(tanks.begin(), tanks.end(), 0) > 1)
cout « "To correct ansver sum of pisibilities must be no more, than 1\n";
 
//расчет вероятности двойного попадания
double double_hit = 0;
for (int i = 0; i < tanks.size(); i++)
double_hit += (tanks[i] * tanks[i]);
 
//вероятность попадания в соседние баки
double neibour_hir = 0;
for (int i = 0; i < tanks.size() - 1; i++)
neibour_hir += tanks[i] * tanks[i + 1];
for (int i = tanks.size()-1; i > 0; i--)
neibour_hir += tanks[i] * tanks[i - 1];
 
cout « "inflammation posibility = "
« neibour_hir + double_hit « "%" « endl;
 
cin.get();
cin.get();
return 0;
} 
Так пойдет?
Ответ Создать тему
Опции темы

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