Форум программистов, компьютерный форум, киберфорум
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
1C 8.x

Найти (в процентах) частоту появления каждого из m наиболее часто встречающихся элементов (m<<n)

02.11.2011, 16:05. Показов 2458. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста из паскаля в 1с сделать, раньше с 1с вообще никаких отношений не имел, вообще не понятно, 2 задачи сделал кое-как, работают, а с массивами вообще атас.

Вот само задание:
В целочисленном массиве K(n) много повторяющихся элементов. Найти (в процентах) частоту появления каждого из m наиболее часто встречающихся элементов (m<<n)

Вот программа на паскале, полностью рабочая:
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
const
  n=10;
  m=2;
var
  mas: array[1..n] of integer;
  popular: array[1..n, 1..2] of integer;
  f, p, i, j, k: integer;
begin
  randomize;
  for i := 1 to n do
  begin
    mas[i] := random(5);
    write(mas[i]:2)
  end;
  for i := 1 to n-1 do
  for j := i+1 to n do
  if mas[i] > mas[j] then
  begin
    k := mas[i];
    mas[i] := mas[j];
    mas[j] := k
  end;
  writeln;
  i := 1;
  p := 1;
  writeln('Vsego');
  repeat
    k := 1;
    while (mas[i] = mas[i+1])and(i<n) do
    begin
      inc(k);
      inc(i);
    end;
    writeln(mas[i], ' - ', k*100/n:0:2, '%');
    popular[p, 1] := k;
    popular[p, 2] := mas[i];
    inc(p);
    inc(i)
  until i > n;
  for i := 1 to p-2 do
  for j := i+1 to p-1 do
  if popular[i, 1] < popular[j, 1] then
  for f := 1 to 2 do
  begin
    k := popular[i, f];
    popular[i, f] := popular[j, f];
    popular[j, f] := k;
  end;
  writeln('Itogo');
  if p > m then p := m;
  for i := 1 to p do
  writeln(popular[i, 2], ' - ', popular[i, 1]*100/n:0:2, '%');
  readln
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.11.2011, 16:05
Ответы с готовыми решениями:

Найти (в процентах) частоту появления каждого из m наиболее часто встречающихся элементов массива
Вот задача : В целочисленном массиве k(n) много повторяющихся элементов. Найти (в процентах) частоту появления каждого из m...

Найти частоту появления каждого из наиболее часто встречающихся элементов
Помогите решить задачу на Pascal: В целочисленном массиве K(n) много повторяющихся элементов. Найти (в процентах) частоту появления...

Массивы. Найти частоту появления каждого из m элементов, наиболее часто встречающиеся (m << n) в процентах
помогите пожалуйста с заданием на DEV C++ В целочисленном массиве K (n) многие элементы, которые повторяются. Найти частоту появления...

4
 Аватар для FtarG
138 / 138 / 42
Регистрация: 02.11.2010
Сообщений: 316
02.11.2011, 17:23
Какая нестандартная задача для 1с =)
1C
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
РазмерМассива = 40;
Количество = 5;
 
// Создаем и заполняем массив
Массив = Новый Массив;
Для Индекс = 0 По РазмерМассива Цикл
   Массив.Добавить(/*Тут надо еще придумать чем заполнять массив*/);
КонецЦикла;
 
// Выбираем повторения элементов массива
УжеБыли = Новый Массив;
Структура = Новый Структура("Элемент, Повторений");
 
ДляКаждого Элемент В Массив Цикл
   
   // Если символ цже был то пропускаем цикл
   Если УжеБыли.Найти(Элемент) = Неопределено Тогда
      Продолжить;
   КонецЕсли;
 
   // Обнуляем кол-во повторов
   Повторов = 0;
 
   // Ищем текущий элемент в массиве, считаем повторы
   Для Индекс = 0 По РазмерМассива Цикл
      Если Массив[Индекс] = Элемент Тогда
         Повторов = Повторов + 1;
         Если НЕ УжеБыли.Найти(Элемент) = Неопределено Тогда
            УжеБыли.Добавить(Элемент);
         КонецЕсли;
      КонецЕсли;
   КонецЦикла;
   
   // Заносим элемент и количество его повторов в структуру
   Структура.Вставить(Элемент, Повторов)
 
КонецЦикла;
 
// Теперь есть структура с элементами и количеством их повторов в массиве
// Ищем самые часто встречающиеся
Для Число = 0 По Количество Цикл
   // Тут ищем самые часто встречающиеся
КонецЦикла;
Извини, не до конца, просто сейчас идти надо, но додумать можно.
Посмотри в инете как работать со структурой и массивами в 1с...
0
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
 Аватар для magirus
28049 / 15785 / 983
Регистрация: 15.09.2009
Сообщений: 67,752
Записей в блоге: 78
02.11.2011, 19:05
Армейский Дьявол, может вам таки в Си надо? или С++?
0
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
02.11.2011, 19:46  [ТС]
Цитата Сообщение от magirus Посмотреть сообщение
Армейский Дьявол, может вам таки в Си надо? или С++?
Не, С++ было уже точно 1с
0
 Аватар для duk337
2956 / 1768 / 84
Регистрация: 03.11.2011
Сообщений: 8,280
03.11.2011, 20:12
Совет: на самом деле в 1с всё можно решить одним запросом из таблицы значений. Но надо искать - а некогда. Поройся в инете или в конфах 1с, особенно в зарплатной.
То есть заполняется не массив, а ТЗ, а потом запрос типа скульного со ссылкой на источник - эту ТЗ. В запросе есть такая фича, как "Временная таблица", и обратиться надо через неё к переменной типа ТЗ. Если важно и ждёт - я могу завтра порыться в анналах.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.11.2011, 20:12
Помогаю со студенческими работами здесь

Найти частоту появления каждого из m наиболее часто встречающихся элементов массива
Никогда не думал, что сам буду просить помощь в программировании, но так сложились обстоятельства. Помогите, пожалуйста, кому не сложно....

Получить 100 наиболее часто встречающихся слов файла и частоту их появления
Даны символьный файл f, содержащий произвольный текст длиной более 5000 слов. Слова в тексте разделены пробелами и знаками препинания....

Определить пять наиболее часто встречающихся ответов и их долей в процентах
Радиокомпания провела опрос слушателей (не более 500) по вопросу: «Кого вы считаете человеком года?». Определить пять наиболее часто ...

Составить программу наиболее часто встречающихся ответов и их долей в процентах
Японская радиокомпания провела опрос N радиослушателей по вопросу: «Какое животное вы связываете с Японией и японцами?». Составить...

Получить 10 наиболее часто встречающихся букв и число их появления
Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв и число их появления. в проге есть...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru