Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
3 / 3 / 1
Регистрация: 11.10.2014
Сообщений: 148

Определить, какое из трех множеств содержит наибольшее количество элементов

11.10.2014, 21:08. Показов 1464. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно составить программу, которая определит какое из трех множеств содержит наибольшее количество элементов. Возможен вариант, что количество элементов во множествах могут быть одинаковы.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.10.2014, 21:08
Ответы с готовыми решениями:

Строка состоит из 3-ех слов.Определить какое из слов содержит наибольшее количество гласных букв
Строка состоит из 3-ех слов.Определить какое из слов содержит наибольшее количество гласных букв.Вывести ASCII-коды всех символов этого...

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

Даны два целых числа, вывести на экран какое из чисел содержит наибольшее количество цифр
Даны два целых числа вывести на экран какое из чисел содержит наибольшее количество цифр

12
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,433
15.10.2014, 10:53
Лучший ответ Сообщение было отмечено ildwine как решение

Решение

Возможен вариант, что количество элементов во множествах могут быть одинаковы.
Этот вариант рассмотрите самостоятельно.

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
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
uses
  crt;
const
  n=10;
var
  x1,x2,x3:set of byte;
  y,z:set of byte;
  i,q,w:longint;
  max,n1,n2,n3:integer;
begin
  clrscr;
  randomize;
  x1:=[]; x2:=[]; x3:=[];
  { Формирование 1-го множества }
  q:=random(n)+n div 2;
  w:=q;
  q:=1;
  while (w>q-1) do
    begin
      i:=random(255)+1;
      if not(i in x1) then
        begin
          x1:=x1+[i];
          inc(q);
        end;
   end;
  { Вывод 1-го множества }
  writeln('1-e множество: ');
  n1:=0;
  for i:= 0 to 255 do
    if i in x1 then
      begin
        write(i,' ');
        inc(n1);
      end;
  writeln;
  writeln('Число элементов (мощность множества): ',n1);
 
  { Формирование 2-го множества }
  q:=random(n)+n div 2;
  w:=q;
  q:=1;
  while (w>q-1) do
    begin
      i:=random(255)+1;
      if not(i in x2) then
        begin
          x2:=x2+[i];
          inc(q);
        end;
   end;
  { Вывод 2-го множества }
  writeln('2-e множество: ');
  n2:=0;
  for i:= 0 to 255 do
    if i in x2 then
      begin
        write(i,' ');
        inc(n2);
      end;
  writeln;
  writeln('Число элементов (мощность множества): ',n2);
 
  { Формирование 3-го множества }
  q:=random(n)+n div 2;
  w:=q;
  q:=1;
  while (w>q-1) do
    begin
      i:=random(255)+1;
      if not(i in x3) then
        begin
          x3:=x3+[i];
          inc(q);
        end;
   end;
  { Вывод 3-го множества }
  writeln('3-e множество: ');
  n3:=0;
  for i:= 0 to 255 do
    if i in x3 then
      begin
        write(i,' ');
        inc(n3);
      end;
  writeln;
  writeln('Число элементов (мощность множества): ',n3);
 
  if (n1>=n2) and (n1>=n3) then
    writeln('Первое множество содержит наибольшее количество элементов = ',n1)
  else
    if n2>=n3 then
      writeln('Второе множество содержит наибольшее количество элементов = ',n2)
    else
      writeln('Третье множество содержит наибольшее количество элементов = ',n3);
  readln;
end.
1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7818 / 4637 / 2837
Регистрация: 22.11.2013
Сообщений: 13,159
Записей в блоге: 1
15.10.2014, 13:02
Лучший ответ Сообщение было отмечено ildwine как решение

Решение

ZX Spectrum-128,
знатная портянка вышла. Хотя достаточно было
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
const sc=3; rep1=10; rep2=30;
type TType=Byte;
var
  x: array [1..sc] of set of TType;
  n: array [1..sc] of Integer;
  i, j, m: Integer;
begin
  Randomize;
  for i:=1 to sc do
    for j:=1 to rep1+Random(rep2) do
      Include(x[i],Low(TType)+Random(High(TType)-Low(TType)+1));
  for i:=1 to sc do begin
    WriteLn('Множество ',i,':');
    for j:=Low(TType) to High(TType) do 
      if j in x[i] then begin
        Inc(n[i]); Write(j:4);
      end; WriteLn;
    WriteLn('Количество элементов ',n[i]); WriteLn;
  end;
  for i:=1 to sc do if n[i]>m then m:=n[i];
  Write('Максимальное количество в:');
  for i:=1 to sc do if n[i]=m then Write(' ',i); WriteLn;
end.
3
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,433
15.10.2014, 13:13
bormant, да уж.
Лень было что-то делать, кроме copy/paste.
0
3 / 3 / 1
Регистрация: 11.10.2014
Сообщений: 148
17.10.2014, 19:59  [ТС]
Спасибо огромное
А вопрос - что значат 11 и 14 строки?
Что такое Low(TType),(High(TType)?
Я чего-то сообразить не могу.
0
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,433
17.10.2014, 20:03
Low - начальное значение
High - конечное значение
1
3 / 3 / 1
Регистрация: 11.10.2014
Сообщений: 148
17.10.2014, 20:25  [ТС]
А что мы через это выводим?
0
3 / 3 / 1
Регистрация: 11.10.2014
Сообщений: 148
12.11.2014, 20:05  [ТС]
А не подскажете, как само множество вводить через пробелы?
Не 176945786, а именно что бы 17 6 9 45 78 6.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7818 / 4637 / 2837
Регистрация: 22.11.2013
Сообщений: 13,159
Записей в блоге: 1
12.11.2014, 22:01
Цитата Сообщение от Jalise1 Посмотреть сообщение
как само множество вводить через пробелы?
Можно так (ввод чисел из одной строки):
Pascal
1
2
3
4
5
6
7
8
9
var
  e: TType;
  s: set of TType;
...
  s:=[];
  while not SeekEOLn do begin
    Read(e); Include(s,e);
  end; ReadLn;
...
1
3 / 3 / 1
Регистрация: 11.10.2014
Сообщений: 148
15.11.2014, 23:39  [ТС]
Цитата Сообщение от ZX Spectrum-128 Посмотреть сообщение
{ Формирование 1-го множества }
* q:=random(n)+n div 2;
* w:=q;
* q:=1;
* while (w>q-1) do
* * begin
* * * i:=random(255)+1;
* * * if not(i in x1) then
* * * * begin
* * * * * x1:=x1+[i];
* * * * * inc(q);
* * * * end;
Можете объяснить, что тут происходит? А то мне схемку рисовать еще, а я не понимаю, как работают эти строки.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7818 / 4637 / 2837
Регистрация: 22.11.2013
Сообщений: 13,159
Записей в блоге: 1
16.11.2014, 01:04
Jalise1,
Поскольку TType определен как Byte, то Low(TType) дает 0 -- минимальное значение для типа Byte, High(TType) дает 255 - максимальное значение для типа Byte. Написали бы ShortInt, было бы -128 и 127, написали бы 5..20, были бы эти значения. Поскольку множество может содержать любое значение из заданного типом интервала, то для подсчета количества элементов множества нужно проверить, не содержится ли в нем каждое из этих значений. Соответственно и наполнение множеств производится значениями из того же интервала.
1
3 / 3 / 1
Регистрация: 11.10.2014
Сообщений: 148
16.11.2014, 22:37  [ТС]
Цитата Сообщение от Jalise1 Посмотреть сообщение
q:=random(n)+n div 2;
А вот это он что проверяет?
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7818 / 4637 / 2837
Регистрация: 22.11.2013
Сообщений: 13,159
Записей в блоге: 1
17.11.2014, 00:42
Цитата Сообщение от Jalise1 Посмотреть сообщение
это он что проверяет?
проверяет? где? кто здесь?

ку присвоить псевдослучайное целое значение из диапазона [0..n) плюс целая часть отделения n на два -- никто ничего не проверяет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.11.2014, 00:42
Помогаю со студенческими работами здесь

Определить, какое наибольшее количество конфет мальчик может взять?
Маленький мальчик попал в сказочную страну и увидел там дорогу, вдоль которой разложены мешки с конфетами. На каждом мешке написано...

Определить, какой из данных векторов X[N], Y[M], Z[K] содержит наибольшее количество ненулевых компонент
Помогите решить задачу (через printf scanf) Написать программу, использующую функцию. Определить, какой из данных векторов X, Y, Z...

Определить порядковый номер числа в последовательности, которое содержит наибольшее количество цифр
2. Дана последовательность чисел. Определить порядковый номер числа, которое содержит наибольшее количество цифр.

Дан массив x(n,m) найти номер той строки ,которая содержит наибольшее количество положительных элементов
Дан массив x(n,m) найти номер той строки ,которая содержит наибольшее количество положительных элементов. Ребят выручайте,очень нужна...

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


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru