Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 02.12.2015
Сообщений: 15
1

Определить сколько людей приняли участие в каждом совещании

05.07.2017, 19:40. Просмотров 1126. Ответов 2
Метки нет (Все метки)

В одно и то же время в соседних конференц-залах проходят два совещания. Известно количество рукопожатий, которыми обменялись участники каждого совещания. Определить, сколько человек приняли участие в каждом совещании.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.07.2017, 19:40
Ответы с готовыми решениями:

Определить, сколько избирателей приняли участие в голосовании в каждом населенном пункте
Пусть шесть населенных пунктов обозначены номерами от 1 до 6 (величина k), а пять кандидатов -...

В каждом диапазоне сколько людей
Здравствуйте! Есть таблица emp, в ней столбец зарплаты, и есть таблица salgrade, в ней три столбца...

Гонщик принял участие в 6 заездах.При условии хранения информации о скорости в каждом заезде в записи определить среднюю скорость гонщика.
Гонщик принял участие в 6 заездах.При условии хранения информации о скорости в каждом заезде в...

В исходной строке а определить сколько в ней находится предложений и сколько слов в каждом предложении
В исходной строке а определить сколько в ней находится предложений и сколько слов в каждом...

2
276 / 275 / 83
Регистрация: 03.02.2013
Сообщений: 789
13.07.2017, 02:16 2
Вникнуть в условие мне лично сложно, но если допустить, что каждый пережмякал в своём зале всех и в соседнем, а даны лишь числа отдельно по залам, т.е. если в первом зале 3 человека, во втором 1, получается первый из зала "a" пожал руки двоим из своего плюс одного из соседнего, второй двоих из своего (но одного мы уже учили первым рукопожатием) и одного из соседнего, а третий из первого тоже двоих из своего (всех учли на предыдущих шагах) и одного из соседнего, получается в сумме у первого зала было 3+2+1 рукопожатий, у второго, где был всего один человек в сумме - 3 рукопажатий (с каждым из первого зала), тогда число всех рукопожатий https://www.cyberforum.ru/cgi-bin/latex.cgi?R_a(a) в зале "a":
https://www.cyberforum.ru/cgi-bin/latex.cgi?R_a(a)=\sum_{i=1}^{N_a-1}i
где https://www.cyberforum.ru/cgi-bin/latex.cgi?N_a - число людей в зале "a"
добавим к ним рукопожатия с залом "b" (тут уже исключать никого нельзя, каждый из зала "a" пожал руку человеку в зале "b":
https://www.cyberforum.ru/cgi-bin/latex.cgi?R_a(b)=N_aN_b
в итоге общее число рукопожатий для зала "a":
https://www.cyberforum.ru/cgi-bin/latex.cgi?R_a=R_a(a)+R_a(b)=\sum_{i=1}^{N_a-1}i+N_aN_b
первый член - арифметическая прогрессия, сумма которой, как завещал нам Гаусс:
https://www.cyberforum.ru/cgi-bin/latex.cgi?R_a(a)=\frac{(N_a-1)N_a}{2}
итого:
https://www.cyberforum.ru/cgi-bin/latex.cgi?R_a=\frac{(N_a-1)N_a}{2}+N_aN_b = N_a(\frac{N_a-1}{2}+N_b)
аналогичные рассуждения для зала "b":
https://www.cyberforum.ru/cgi-bin/latex.cgi?R_b= N_b(\frac{N_b-1}{2}+N_a)
получаем систему уравнений:
https://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{equation*}<br />
 \begin{cases}<br />
  R_a= N_a(\frac{N_a-1}{2}+N_b); \\<br />
  R_b= N_b(\frac{N_b-1}{2}+N_a)<br />
 \end{cases}<br />
\end{equation*}
как таковая система эта в лоб не решается, относитльно https://www.cyberforum.ru/cgi-bin/latex.cgi?(N_a; N_b), степень выходит большая, но в поле https://www.cyberforum.ru/cgi-bin/latex.cgi?R_a\text{\in N$ ;}\text{   }   R_b\text{\in N$ ;}\text{   }  N_a\text {\in N$;}\text{   }  N_b\text {\in N$;} возможно решается, но это чуть ли не курсовая, хотелось бы точнее узнать условие, т.к. что-то я не догнал, либо я ошибся в рассуждениях, либо задача действительно не простая
0
Модератор
60231 / 45354 / 31294
Регистрация: 18.05.2008
Сообщений: 108,952
13.07.2017, 09:26 3
Лучший ответ Сообщение было отмечено Bloggers как решение

Решение

А по моему жмякали только каждый в своем совещании и решить можно так.
Pascal
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
procedure kol(x:integer);
var k:integer;
begin
k:=0;
while x>0 do
 begin
  x:=x-k;
  k:=k+1;
 end;
if x<>0 then writeln('Число рукопожатий неверно')
else writeln(' k=',k);
end;
var s1,s2:integer;
begin
repeat
write('Введите число рукопожатий в первом совещании натуральное число s1=');
readln(s1);
until s1>0;
kol(s1);
repeat
write('Введите число рукопожатий во втором совещании натуральное число s2=');
readln(s2);
until s2>0;
kol(s2);
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.07.2017, 09:26

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

В соревнованиях по прыжкам в длину принимают участие 20 спортсменов. Определить, сколько из них выполнили норму, если она составляет К метров
В соревнованиях по прыжкам в длину принимают участие 20 спортсменов. Определить, сколько из них...

Определить, сколько и каких животных и людей будет у Максима через месяц
У Максима х знакомых. Из них все четные - женского пола, а нечетные - животные. Те животные, индекс...

По году и месяцу рождения определить, сколько людей родились в мае 1995 года
Напечатать числа следующим образом 25 25.5 24.8 26 26.5 25.8 ................ 35 35.5 35.8...

Определить, сколько сотрудников в каждом отделе
Помогите пожалуйста, кто понимает, оч надо:wall: типы полей обозначаются следующим образом:...


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

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

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