Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2013, 13:32   #1
low_radio
Новичок
Джуниор
 
Регистрация: 24.01.2013
Сообщений: 3
По умолчанию Qbasic. Разновидности чисел

Помогите пожалуйста, нужно решить задачу:
Вводиться несколько чисел, нужно найти найти наибольшее кол-во совпадений, учесть возможность неоднозначности.
В моей наработке числа сначала выстраиваются по возрастанию, затем под номером числа записывается кол-во повторений этого числа. Как учесть возможность неоднозначности и вывести все это?
Код:
 LET b(1) = 1
 LET l = 1
 FOR j = 1 TO n - 1 STEP 1
  FOR i = 1 TO n - 1 STEP 1
   IF a(i) > a(i + 1) THEN
    SWAP a(i), a(i + 1)
   END IF
  NEXT i
 NEXT j
 FOR i = 1 TO n - 1 STEP 1
  IF a(i) = a(i + 1) THEN
   LET b(l) = b(l) + 1
  ELSE
   LET l = i
   LET b(i) = 1
  END IF
 NEXT i
 FOR i = 1 TO n STEP 1
  PRINT b(i);
 NEXT i
 RETURN

Последний раз редактировалось low_radio; 24.01.2013 в 13:52.
low_radio вне форума Ответить с цитированием
Старый 24.01.2013, 13:42   #2
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Если под неоднозначностью подразумеваются числа с разными знаками то как-то так:

Код:
IF (ABS(A)=ABS(B)) AND (A>0) AND (B<0) THEN ...
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 24.01.2013, 13:51   #3
low_radio
Новичок
Джуниор
 
Регистрация: 24.01.2013
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Sciv Посмотреть сообщение
Если под неоднозначностью подразумеваются числа с разными знаками то как-то так:

Код:
IF (ABS(A)=ABS(B)) AND (A>0) AND (B<0) THEN ...
Нет, под неоднозначностью числа имеется ввиду то что может быть несколько чисел одновременно(допустим максимум 5 совпадений, но у 2 чисел.
low_radio вне форума Ответить с цитированием
Старый 24.01.2013, 13:52   #4
low_radio
Новичок
Джуниор
 
Регистрация: 24.01.2013
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Sciv Посмотреть сообщение
Если под неоднозначностью подразумеваются числа с разными знаками то как-то так:

Код:
IF (ABS(A)=ABS(B)) AND (A>0) AND (B<0) THEN ...
Опс! Прошу прощения, описал задачу не совсем так. Подправил.
low_radio вне форума Ответить с цитированием
Старый 24.01.2013, 13:57   #5
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
5 совпадений, но у 2 чисел.
это как? Наверное, имеется в виду, что одно число повторяется пять раз?

Тогда алгоритм такой:

1. Во временную temp запоминаем текущее (первое) число. Счетчик=1
2. Цикл пока числа не колчились
2.1 Если Число=Темп тогда Счетчик=Счетчик+1 иначе Вывод(Число,Счетчик);
Счетчик=1;
Темп=число;
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Генератор случайных чисел... QBasic JunioR_kz Помощь студентам 5 08.10.2014 12:11
IT профессии - разновидности? crpx Свободное общение 15 26.12.2012 18:48
Блок схема - найти среднее арифметическое нечетных чисел (QBasic) DjMalove Помощь студентам 2 11.12.2012 21:12
Разновидности Boolean k1r1ch Свободное общение 54 14.11.2009 11:42
Сумма чисел QBasic Free style Помощь студентам 0 08.06.2009 17:16