Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.75/40: Рейтинг темы: голосов - 40, средняя оценка - 4.75
Заблокирован

Quicksort qbasic быстрая сортировка половиной и МЫ

04.05.2018, 22:23. Показов 8905. Ответов 86
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
quicksort qbasic быстрая сортировка половиной и МЫ

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

для А элементов 2 вложенных массива
равные и число перестановок якобы А^2

зато правильнее: I от1 доА и J отI доА
и видимо те ошиблись пиша 1 вместо I
причём часто противореча пояснениям

для А=100 требуется А^2=10ооо ходов
а правильнее =100*(99)/2 =4950 ходов
2-жды меньше видно из формулы

и ещё вникнув в сортировку пополам
получается для А=100
=2*((100/2)*((100/2)-1)/2) = 2450 ходов
4-жды меньше чем советуют по интернету
и возможно реально делить на 4 части и
далее сортируется пузырьковая сортировка

Проведя эксперимент контролируя время
сортируя массив обратный от 100ооо до 1

всё про qb64 компилятор qbasic:
мой пополам 135 секунд и А^2 215 секунд
мой простой 389 секунд и А^2 497 секунд
чужие непонятные около 200 секунд

и вообще предполагаю используя мои строки
контролирующие время реально тестировать
многие алгоритмы сортировки на время
лучше всего массив от 100ооо до 1

и ещё есть методы обмена без доп переменной

В свете вышесказанного: на тему сортировка и МЫ
обнаруживаются остроумные решения
ускоряющие тысячи операций в разы

Вдобавок создал строки контролирующие время
пока отсутствующие в программе в начале темы
и возможно проверять на скорость варианты сортировки

Программу размещаю через тэг code

QBasic/QuickBASIC
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
n = 100
DIM d(n), a(n)
RANDOMIZE TIMER
 
FOR i = 1 TO n
    d(i) = n - i + 1
    PRINT d(i);
NEXT: PRINT: PRINT
 
sumd = 0: suma = 0: x = 0: y = 1: z = 0
 
FOR i = 1 TO n
    sumd = sumd + d(i)
NEXT: sredd = sumd / n
PRINT: PRINT sredd: PRINT
 
FOR i = 1 TO n
    IF d(i) < sredd THEN a(y) = d(i): y = y + 1: ELSE a(n - z) = d(i): z = z + 1
NEXT
 
FOR i = 1 TO n: suma = suma + a(i): NEXT: sreda = suma / n
 
FOR i = 1 TO n / 2: FOR j = i TO n / 2
        IF a(i) > a(j) THEN x = a(i): a(i) = a(j): a(j) = x
NEXT: NEXT
 
FOR i = n / 2 TO n: FOR j = i TO n
        IF a(i) > a(j) THEN x = a(i): a(i) = a(j): a(j) = x
NEXT: NEXT
 
FOR i = 1 TO n: PRINT a(i);: NEXT
PRINT: PRINT: PRINT sreda: PRINT
 
END
любителям сортировки дарю ютюб

0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.05.2018, 22:23
Ответы с готовыми решениями:

If: меньшее из 2-х заданных чисел заменить половиной их суммы, а большее - их удвоенным произведением
Даны действительные числа x,y не равные друг другу.Меньшее из этих чисел заменить половиной их...

Меньшее из двух чисел заменить половиной их суммы
Даны действительные числа х и у, не равные друг другу. Меньшее из этих двух чисел заменить...

Меньшее из двух чисел заменить половиной их суммы, а большее — их удвоенным произведением
Даны действительные числа x и y, не равные друг другу. Меньшее из этих двух чисел заменить...

86
Заблокирован
04.05.2018, 22:26  [ТС]
вкратце: рассчитываем средний элемент
и за 1 цикл раскидываем в начало и в конец
в другой массив и сортируем 2 части раздельно
Миниатюры
Quicksort qbasic быстрая сортировка половиной и МЫ  
0
Заблокирован
05.05.2018, 11:02  [ТС]
общие строки при правильном расположении
внутри программы рассчитывают время
для сравнения сортировки многими алгоритмами
соблюдая универсальные имена переменных

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
n = 100000
RANDOMIZE TIMER
 
FOR i = 1 TO n
    a(i) = n - i + 1
    'a(i) = INT(RND * n)
NEXT: PRINT: PRINT
 
start = TIMER: p = 0: s = 0
 
s = s + 1 ' число циклов 
p = p + 1 ' число перестановок
 
finish = TIMER
 
FOR i = 1 TO n: PRINT a(i);: NEXT
 
PRINT: PRINT: PRINT finish - start, s, p
END
а вообще предполагаю окажется
мой алгоритм для сортировки частей A/(n^2)

=A2*(B$1/A2)*((B$1/A2)-1)/2

100 ячеек и 1 часть = 4950 ходов
100 ячеек и 2 части = 2450 ходов
100 ячеек и 4 части = 1200 ходов
100 ячеек и 8 частей = 575 ходов

что осталося проверить

додумав деление на 4 участка

100ооо элементов наизнанку
сортировались 66 секунд

и программу размещу позже
пока не универсально: циклы подряд

наверняка возможно превратить в 3 цикла
тогда небось получится делить ещё на части

разделение на 4 части менее предсказуемо
и тест показал нормально делит на 2 части

на 4 части неудачно делит нечётное количество
зато перешёл от имён в 2-мерный массив

известна формула количества проходов
W = LOG(N) / LOG(2)
для создания вложенных циклов

но думаю останется деление пополам
уже реализованное и ниже скопирую

Кликните здесь для просмотра всего текста
Code
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
n = 24
DIM d(5, n), sum(8), sred(8)
RANDOMIZE TIMER
 
FOR i = 1 TO n
    d(1, i) = n - i + 1
    PRINT d(1, i);
NEXT: PRINT
 
start = TIMER: p = 0: s = 0
 
FOR i = 1 TO n: sum(1) = sum(1) + d(1, i)
NEXT: sred(1) = sum(1) / n: PRINT sred(1): 'ISXOD
 
 
y = 1: z = 0: FOR i = 1 TO n
    IF d(1, i) < sred(1) THEN d(2, y) = d(1, i): y = y + 1: ELSE d(2, n - z) = d(1, i): z = z + 1
NEXT
 
FOR i = 1 TO n: PRINT d(2, i);: NEXT: PRINT
FOR i = 1 TO n: sum(2) = sum(2) + d(2, i): NEXT
sred(2) = sum(2) / n: PRINT sred(2): PRINT
 
 
FOR i = 1 TO n / 2: sum(3) = sum(3) + d(2, i)
NEXT: sred(3) = sum(3) / (n / 2): PRINT sred(3);
FOR i = n / 2 TO n: sum(4) = sum(4) + d(2, i)
NEXT: sred(4) = sum(4) / (n / 2): PRINT sred(4): PRINT
 
 
y = 1: z = 0: FOR i = 1 TO n / 2
    IF d(2, i) < sred(3) THEN d(3, y) = d(2, i): y = y + 1: ELSE d(3, n / 2 - z) = d(2, i): z = z + 1
NEXT
FOR i = 1 TO n / 2: PRINT -d(3, i);: NEXT: PRINT
 
y = n / 2 + 1: z = 0: FOR i = n / 2 + 1 TO n
    IF d(2, i) < sred(4) THEN d(3, y) = d(2, i): y = y + 1: ELSE d(3, n - z) = d(2, i): z = z + 1
NEXT
 
FOR i = n / 2 + 1 TO n: PRINT -d(3, i);: NEXT: PRINT: PRINT 'FOR i = 1 TO n: PRINT -d(3, i);: NEXT: PRINT
 
 
FOR i = 1 TO n / 2: sum(5) = sum(5) + d(3, i): NEXT: sred(5) = sum(5) / (n / 1): PRINT sred(5);
FOR i = n / 2 + 1 TO n: sum(6) = sum(6) + d(3, i): NEXT: sred(6) = sum(6) / (n / 1): PRINT sred(6)
 
 
FOR i = 1 TO n / 4: FOR j = i TO n / 4
        IF d(3, i) > d(3, j) THEN x = d(3, i): d(3, i) = d(3, j): d(3, j) = x: p = p + 1
s = s + 1: NEXT: NEXT
FOR i = n / 4 TO n / 2: FOR j = i TO n / 2
        IF d(3, i) > d(3, j) THEN x = d(3, i): d(3, i) = d(3, j): d(3, j) = x: p = p + 1
s = s + 1: NEXT: NEXT
FOR i = n / 2 TO 3 * n / 4: FOR j = i TO 3 * n / 4
        IF d(3, i) > d(3, j) THEN x = d(3, i): d(3, i) = d(3, j): d(3, j) = x: p = p + 1
s = s + 1: NEXT: NEXT
FOR i = 3 * n / 4 TO n: FOR j = i TO n
        IF d(3, i) > d(3, j) THEN x = d(3, i): d(3, i) = d(3, j): d(3, j) = x: p = p + 1
s = s + 1: NEXT: NEXT
 
FOR i = 1 TO n: sum(7) = sum(7) + d(3, i): NEXT: sred(7) = sum(7) / n: PRINT
 
 
finish = TIMER
 
FOR i = 1 TO n: PRINT d(3, i);: NEXT
PRINT: PRINT sred(7): PRINT
 
PRINT finish - start, s, p
END


Добавлено через 8 минут
в отличие от деления на 4 части
деление пополам работает с любым массивом

Code
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
n = 37
DIM d(2, n), sum(5), sred(5)
RANDOMIZE TIMER
 
FOR i = 1 TO n
    d(1, i) = n - i + 1
    PRINT d(1, i);
NEXT: PRINT
 
start = TIMER: p = 0: s = 0
 
FOR i = 1 TO n: sum(1) = sum(1) + d(1, i)
NEXT: sred(1) = sum(1) / n: PRINT sred(1):
 
 
y = 1: z = 0: FOR i = 1 TO n
    IF d(1, i) < sred(1) THEN d(2, y) = d(1, i): y = y + 1: ELSE d(2, n - z) = d(1, i): z = z + 1
NEXT
 
FOR i = 1 TO n: PRINT -d(2, i);: NEXT: PRINT
FOR i = 1 TO n: sum(2) = sum(2) + d(2, i): NEXT
sred(2) = sum(2) / n: PRINT sred(2): PRINT
 
 
FOR i = 1 TO n / 2: FOR j = i TO n / 2
        IF d(2, i) > d(2, j) THEN x = d(2, i): d(2, i) = d(2, j): d(2, j) = x: p = p + 1
s = s + 1: NEXT: NEXT
FOR i = n / 2 TO n: FOR j = i TO n
        IF d(2, i) > d(2, j) THEN x = d(2, i): d(2, i) = d(2, j): d(2, j) = x: p = p + 1
s = s + 1: NEXT: NEXT
 
FOR i = 1 TO n: sum(3) = sum(3) + d(2, i): NEXT: sred(3) = sum(3) / n: PRINT
 
 
finish = TIMER
 
FOR i = 1 TO n: PRINT d(2, i);: NEXT
PRINT: PRINT sred(3): PRINT
 
PRINT finish - start, s, p
END
оказывается худшими исходными данными
являются данные специально подготовленные
и подтверждается формула числа перестановок :
=2*4*3/2 = 12 перестановок и 6 перестановок
Миниатюры
Quicksort qbasic быстрая сортировка половиной и МЫ  
0
Заблокирован
05.05.2018, 11:59  [ТС]
вместо изначальных =8*7/2 = 28 перестановок
и вместо массово ошибочного числа перестановок
=8^2 = 64 перестановок
12 перестановок в 5 раз быстрее
6 перестановок в 10 раз быстрее

формула количества проходов вложенных циклов
= LOG(N) / LOG(2)

0
Заблокирован
07.05.2018, 10:40  [ТС]
сам экспериментально нашёл и исправил особенность
типа если ввести большое значение в массив
тогда средний окажется искажён
и массив делится пополам неправильно

а оказалось решение встроено в виде счётчика
количества элементов меньше среднего и работает

1-вые непонятные циклы лишь заполнение массива
специально худшими значениями и заодно
100ооо элементов сортировал за менее 120 секунд
1ооо сортирует за 0,05с за 274ооо проходов и 4600 перестановок

QBasic/QuickBASIC
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
n = 13
DIM d(2, n), sum(5), sred(5)
 
RANDOMIZE TIMER
 
FOR i = 1 TO INT(n / 2)
    d(1, i) = INT(RND * 20) + 5
    PRINT i; "="; d(1, i);
NEXT: PRINT
 
FOR i = INT(n / 2) + 1 TO n
    d(1, INT(i + 0.5)) = INT(RND * 10) + 1
    PRINT INT(i + 0.5); "="; d(1, i);
NEXT: PRINT: PRINT
 
FOR k = 1 TO n: PRINT d(1, k);: NEXT: PRINT
 
start = TIMER: p = 0: s = 0
 
FOR i = 1 TO n: sum(1) = sum(1) + d(1, i)
NEXT: sred(1) = sum(1) / n: PRINT sred(1): PRINT
 
y = 1: z = 0: FOR i = 1 TO n
    IF d(1, i) < sred(1) THEN d(2, y) = d(1, i): y = y + 1: ELSE d(2, n - z) = d(1, i): z = z + 1
NEXT: PRINT
 
FOR i = 1 TO n: sum(2) = sum(2) + d(2, i): NEXT
sred(2) = sum(2) / n: PRINT sred(2), y: PRINT
 
FOR i = 1 TO y - 1: FOR j = i TO y - 1
        IF d(2, i) > d(2, j) THEN x = d(2, i): d(2, i) = d(2, j): d(2, j) = x: p = p + 1
    s = s + 1: NEXT:
NEXT
 
FOR i = y TO n: FOR j = i TO n
        IF d(2, i) > d(2, j) THEN x = d(2, i): d(2, i) = d(2, j): d(2, j) = x: p = p + 1
    s = s + 1: NEXT:
NEXT
 
FOR i = 1 TO n: sum(3) = sum(3) + d(2, i): NEXT: sred(3) = sum(3) / n: PRINT
 
 
finish = TIMER
 
FOR i = 1 TO n: PRINT d(2, i);: NEXT
PRINT: PRINT sred(3)
 
PRINT finish - start, s, p
END
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
07.05.2018, 13:10
Цитата Сообщение от sfinx78 Посмотреть сообщение
100ооо элементов сортировал за менее 120 секунд
Надо ещё поработать над алгоритмом.
Встроенная функция сортировки SortArray на PureBasic отсортировала массив из 100 000 элементов, состоящих из чисел от 0 до 1000 за 0,005 секунды.
Вам есть куда расти в этой области!
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
07.05.2018, 14:23
Цитата Сообщение от Pro_grammer Посмотреть сообщение
состоящих из чисел от 0 до 1000
Ну лиса, ой лиса ))) А ведь пацан реально будет думать, что есть эпически крутая сортировка)))
а нагибчик то идёт за счёт другого.

То что там используется сортировка через списки это понятно, мне интересен другой вопрос,
насколько глубоко они интегрировали этот алгоритм. Отсортируй то же количество, но в
полном диапазоне значений используемого типа.

Добавлено через 6 минут
И пара вопросов к ТС-у
Цитата Сообщение от sfinx78 Посмотреть сообщение
100ооо . . . 1ооо . . . 274ооо
Вы не отличаете нолик от буквы?

Цитата Сообщение от sfinx78 Посмотреть сообщение
на тему сортировка и МЫ
При чём тут "МЫ"? Что за слоганы в теме, которую уже сто тысяч раз обжевали.

Добавлено через 7 минут
И ещё пара вопросов:

1) Разрешение вашего экрана 320x200? В чём причина длины строк в 4 слова?
2) Вы показывали кому-нибудь перед публикацией эти "потоки сознания"?
Это не просто сложно читать, а практически невозможно, информативность текста нулевая.
Похоже на ситуацию, когда вы сидели, тужились, писали код и каждую свою сиюминутную
мысль записывали.
0
Заблокирован
07.05.2018, 15:53  [ТС]
по-моему на вопросы собеседников
ответы есть в моих сообщениях выше

на любом basic реализаций алгоритмов нет
и даже в википедии алгоритмы на многих языках
кроме basic хотя никто не мешает переписать
те же алгоритмы сортировки на basic
чтобы понимали миллионы читателей и МЫ

упоминаемая встроенная функция очевидно
состряпана на языке низкого уровня

и как пишу выше моя тема может использоваться
для проверки алгоритмов через учёт времени
главное сортировать одни и те же массивы

данная тема копируется на 5 форумов
главное для массового понимания повышения
эффективности путём додумывания на 1% от 1%

и текущий алгоритм использующий массив
ждёт оптимизация логарифмическая сортируя
100ооо удобно читать за 17 мега циклов

в свете вышесказанного: попробую перевести
многие алгоритмы сортировки на basic
а также читайте другие мои темы
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
07.05.2018, 16:48
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Ну лиса, ой лиса )))
Ну так, маленько подзадорить ТСа
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
07.05.2018, 18:31
Цитата Сообщение от sfinx78 Посмотреть сообщение
на любом basic реализаций алгоритмов нет
У меня с незапамятных времён в дистрибутиве QuickBasic была вот эта демка:
https://www.youtube.com/watch?v=leNaS9eJWqo

Но если вдруг у кого её нету, ищется она легко ( SORTDEMO.BAS )
Она устарела, но тем не менее все эти QSort-ы уже кучу лет известны.

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

Цитата Сообщение от sfinx78 Посмотреть сообщение
100ооо
Простите вы издеваетесь? В чём причина написания нолей через букву o?
Конечно, понимаю, что каждый хочет себя как-либо индивидуализировать, но
писать цифры буквами - это верх презрения к окружающим.

Цитата Сообщение от sfinx78 Посмотреть сообщение
чтобы понимали миллионы читателей и МЫ
Какие миллионы читателей? Кто МЫ? Вы себя имеете в виду, какое-то коммьюнити или кого-то ещё?
Что за слоган? Тяжело написать прямым текстом что вы имеете в виду?
Зачем дублировать везде это? Это всё равно, что создам не особо умную тему и буду
дописывать в конце каждой строчки "и лысая собака", "и лысая собака". Большими буквами.
Сортировки и ЛЫСАЯ СОБАКА.
Алгоритмы и ЛЫСАЯ СОБАКА.
и т.д. при этом, что за лысая собака, откуда она взялась и как она относится к давно
изученному вопросу доселе неясно. Что это вообще за мода на нелепую чушь пошла?

Цитата Сообщение от sfinx78 Посмотреть сообщение
и как пишу выше моя тема может использоваться
для проверки алгоритмов через учёт времени
Да проверить эффективность это 2 секунды, прицепить высокоточный таймер и тестить на
больших объёмах данных. В чём вообще тут сложность может возникнуть?

Более того тут раздел QBasic, а вы пишете про
Цитата Сообщение от sfinx78 Посмотреть сообщение
qb64
Вы не различаете эти два диалекта? Ну так вот функция таймера у QB64 по умолчанию
эмулирует функцию QBasic с границами точности в 1/18 секунды.
Т.е. то время, за которое у programmer-а отработала его функция вы даже измерить не
сможете, пока не пропишете это так, как написано в справке QB64.

Цитата Сообщение от sfinx78 Посмотреть сообщение
упоминаемая встроенная функция очевидно
состряпана на языке низкого уровня
При чём тут асм? Это алгоритмически достигается. Асм даёт пользу только при
использовании SIMD и при заточке под конвееры\кеш. Большинство современных
диалектов уже многое делают за кодера, например, выравнивают данные и код.
PureBasic, например, всё оборачивает в макросы.

Цитата Сообщение от sfinx78 Посмотреть сообщение
данная тема копируется на 5 форумов
На кой чёрт этот кроссфорумный постинг? Тут уже был один копировальщик, который
на 18 форумов копировал, канул в забвение. Вы думаете что открываете людям целый мир?
Блин не позорьтесь. Эти сортировки уже кучу лет тому назад были изучены крутыми
дядьками и к ним десятки модификаций написаны(в вашем посте видео, там один из
таких дядек), причём с точки зрения мат. статистики, изобрести тут что-то уже невозможно.
Нужно только пробежаться и найти эту информацию. А не стонать, что какие-то ошибки
начинающих повсюду разбросаны, по вполне понятным причинам, ну разбросаны да и
хрен с ними, радуйтесь что вы смогли их распознать и не наступили ногой в котях.
Считайте это необходимым этапом карающей боли в жопе для тех, кто не хочет своими
мозгами честно работать. И всё, сразу нет проблем. Лечить тех, кто сам что-то не в состоянии
написать - бесполезно, это известный факт, а тем паче подобными "потоками мыслей".
0
Заблокирован
07.05.2018, 20:18  [ТС]
вопросы естественно игнорируют главное данной темы
а именно: проверку хотя бы 5 алгоритмов сортировки
как пишу для удобства чтения в тексте: на 100ооо ячеек

посему время выполнения будет правдоподобным

моя сортировка открылась в эмуляторе WinXP
в QuickBasic 4.50 1985-1988
созданном ещё при старом режиме
и как в ютюбе сортировка десятков ячеек
заняла 0 секунд и заодно оболочка равна qb64

теми командами и функциями какими состряпан
наверное сборник сортировок не смогут сочинить
свои программы миллионы читателей и МЫ

где-то нашёл бэйсик сортирующий с непонятными
командами и на 100ооо как удобно читать ячеек
показал результат хуже моего

а ведь мой развивающийся содержит лишь 1 проход
и потом идёт обычная сортировка и то быстро

в свете вышесказанного:
пока есть МЫ и 2 алгоритма сортировки
более-менее понятные из заурядных команд

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

проверка показала: импортный сорт.бас не работает
в имеющихся оболочках basic
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
08.05.2018, 05:41
Цитата Сообщение от sfinx78 Посмотреть сообщение
где-то нашёл бэйсик
Цитата Сообщение от sfinx78 Посмотреть сообщение
импортный сорт.бас не работает
Где-то чё-то нашёл, какой-то
где-то сорт.бас И ЛЫСАЯ СОБАКА!

Цитата Сообщение от sfinx78 Посмотреть сообщение
вопросы естественно игнорируют главное данной темы
как пишу темы естественно
данной главное И ЛЫСАЯ СОБАКА!


в свете вышесказанного:
Уже давно есть ЛЫСАЯ СОБАКА и
популярные алгоритмы сортировки.
Естественно более-менее понятные
из заурядных команд

Цитата Сообщение от sfinx78 Посмотреть сообщение
проверка показала
Проверка показала: кто-то и
ЛЫСАЯ СОБАКА плохо различает
диалекты бейсика.
Настолько плохо, что не отличает
текстовый формат от бинарного.
Но ЛЫСАЯ СОБАКА не виновата,
что кто-то
Цитата Сообщение от sfinx78 Посмотреть сообщение
где-то нашёл бэйсик сортирующий с непонятными
командами и на 100ооо
Смотри 100000 надо писать
так I0o0o0, но можно написать
ещё и так lo0o0o, а есть ещё
такой вариант |●��●��● т.о.
вы и ЛЫСАЯ СОБАКА точно станете
узнаваемым и приобретёте своё
уникальное лицо.

Добавлено через 27 минут
Цитата Сообщение от sfinx78 Посмотреть сообщение
заодно оболочка равна qb64

И ещё проверка всё таки показала:
Что миллионы читателей И ЛЫСАЯ СОБАКА
не различают диалекты ЯП. Но чукча
не читатель, чукча - писатель.
0
08.05.2018, 05:51

Не по теме:

Quiet Snow, не принимайте к сердцу. Пробежался по остальным его темам, на лицо явная речевая бессвязность, нарушены грамматические связи и сама речь состоит из беспорядочного набора слов, а иногда фразы не несут никакой смысловой нагрузки, а содержание речи соответствует содержанию бреда.
В любом случае, тут нужен специалист, и уж точно не программист, а отвечающий за мозги.

0
Заблокирован
08.05.2018, 06:21  [ТС]
главная мысль темы:
сравнение алгоритмов на понятном миллионам языке и МЫ

незачем различать диалекты языка ежели мои программы
работают без изменений во всех версиях языка разных лет
потому как приоритет: понимание программы миллионами
и вдобавок оказывается работает быстрее непонятных программ

на каждом форуме находятся забалтывающие темы
хотя информация забалтывающего sortdemo.bas не включается

и есть якобы непонимающие а в реальности понявшие на 99 % :
ведь предыдущий сам себе противоречит
ведь ранее в теме отвечал по теме значит понял
что и требовалось доказать

и вдобавок поиск "?" показывает только вопросы риторические
не требующие ответов и значит всем всё понятно

а кому якобы непонятно читайте по абзацу в час
и на удивление окажется: тема вкратце

содержит в сжатом виде информации на дюжины страниц

и как все видим выступающие избегают сравнения алгоритмов
сортирующих 100ооо ячеек введением одинаковых моих строк

и главная мысль темы:
сравнение алгоритмов на понятном миллионам языке и МЫ
0
08.05.2018, 06:33

Не по теме:

Искусственный интеллект который мы заслужили.

0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
08.05.2018, 06:50
Цитата Сообщение от sfinx78 Посмотреть сообщение
и главная мысль темы:
сравнение алгоритмов на понятном миллионам языке и МЫ
Что такое "и МЫ?"? Вас прямым текстом спрашивают нахрена вы это пишете?
А вы придуриваетесь...

Цитата Сообщение от sfinx78 Посмотреть сообщение
100ооо
Компилятор кормите этим дерьмом. Может он вас поймёт... Для меня(нормального человека)
это тупо цифра 100 и мусор. Знаете у некоторых людей бывает залита клавиатура пивом,
чаем, кофе и они так же точно пишут, несколько раз у них срабатывает клавиша, но
переписывать им лень. Вы же принципиально коверкаете, вам тяжело посчитать кол-во нулей?
Объясняю нажимаете нолик и проговариваете : "один", "два", "три", "четыре", "пять".

Цитата Сообщение от sfinx78 Посмотреть сообщение
а кому непонятно читайте по абзацу в час
и на удивление окажется: тема вкратце
содержит в сжатом виде информации на дюжины страниц
Да она ничерта не содержит, вы по-русски писать не умеете. И читать походу тоже.
Вам чёрным по белому пишут, эти алгоритмы изобрели пол века назад и уже отшлифовали
десятки раз, берёте гугл и вбиваете туда "QSort улучшение".

Одной из ссылок выпадает:
https://neerc.ifmo.ru/wiki/ind... сортировка

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

Итить вашу мать, вы для начала найдите где даже какой-нибудь банальный пузырёк применить
и если вам его не хватит тогда уже оптимизируйте до усрачки. Сортировки без задачи
бесполезны, это любому кодеру известно.
0
Заблокирован
08.05.2018, 07:33  [ТС]
напоминаю: ежели якобы непонятно что пишу
перечитывайте по абзацу в час и вмиг все всё поймёте

? чужие много букв выше отвечают задаче темы ?
сравнение алгоритмов на понятном миллионам языке и МЫ

ответ: нет
чужие много букв выше НЕ отвечают задаче темы
сравнение алгоритмов на понятном миллионам языке и МЫ

мне не нужны отшлифованные алгоритмы непонятные
мне нужны алгоритмы на понятном миллионам языке basic

а пока мои идеи работают быстрее отшлифованных

и вдобавок раздобыл русифицированный
QBasic совмещённый с DosBox
включающий русский язык: правый ctrl

Qbasic45win7.rar
3МБ: https://yadi.sk/d/BuG5QWaV3VWwgN

программы bas в каталоге
QBasic45win7\App\DOSBox\QB45
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
08.05.2018, 08:25
Цитата Сообщение от sfinx78 Посмотреть сообщение
напоминаю: ежели якобы непонятно что пишу
перечитывайте по абзацу в час и вмиг все всё поймёте
Вы И ЛЫСАЯ СОБАКА сядьте вместе и перечитайте то, что вам пишут по букве в час, вам нужнее.

Цитата Сообщение от sfinx78 Посмотреть сообщение
а пока мои идеи работают быстрее отшлифованных
Так вы их даже не проверили, цитирую:
Цитата Сообщение от sfinx78 Посмотреть сообщение
мне не нужны отшлифованные алгоритмы непонятные


Цитата Сообщение от sfinx78 Посмотреть сообщение
? чужие много букв выше отвечают задаче темы ?
У вас нет задачи, вы тут сиськи мнёте. Вам человек показал результат сортировки
массива, который написан профессионалами и использует все эти методы. Если вы
не хотите это всё изучить - это ваша проблема, ну И ЛЫСОЙ СОБАКИ тоже.

Цитата Сообщение от sfinx78 Посмотреть сообщение
QBasic совмещённый с DosBox
Это QuickBasic, а не QBasic. Впрочем для новичков(дилетантов в данном вопросе), которые только
установили себе эти среды разницы обычно нет, они, а также миллионы читателей И ЛЫСАЯ СОБАКА
редко выходят за базис QBasic, что не позволяет распознать очевидные вещи.

Цитата Сообщение от sfinx78 Посмотреть сообщение
хотя информация забалтывающего sortdemo.bas не включается
Есть ряд людей, у которых всегда проблемы от собственного невежества.
Ежели вы И ЛЫСАЯ СОБАКА соизволите прочитать посты внимательно, то суть
ошибки станет ясна. Читать желательно по букве в час, ваше мышление быстрее
увы не справится. А пардон, там ещё воображаемая И ЛЫСАЯ СОБАКА, её мышление
тоже надо учитывать. В общем "вы держитесь там".

Цитата Сообщение от sfinx78 Посмотреть сообщение
незачем различать диалекты языка ежели мои программы
работают без изменений во всех версиях языка разных лет
Вот тут вы очень сочно обосрались. Это не "версии языка", это разные диалекты, под
разные операционные системы, с разными возможностями, со своими особенностями,
не равнозначные по функционалу и синтаксической записи:

Пруфлинк: Где взять QBasic для Windows 7
0
Заблокирован
08.05.2018, 09:26  [ТС]
задача и МЫ:
сравнение алгоритмов на понятном миллионам языке basic
на 100ооо ячеек применив мой однотипный контроль времени

скопировано у меня выше и видим как 1-й забалтывает
а 2-й якобы не понимает не приводя непонятные абзацы

"написан профессионалами" в худшем смысле слова "написан"
на массово непонятном языке и вдобавок медленно работающий

да и ссылки не включились и неизвестно есть ли там basic
и в любом случае готовая команда типа sort не интересует
интересуют именно циклы для массового понимания ускорения

видя ошибки в чужих программах не работающие
и как ни странно не исправленные за все годы
в разных qbasic просто стираю неработающее

т.к. разбираться в непонятных функциях мне незачем
как незачем "распознать очевидные вещи" про версии и диалекты
раз мои программы работают без изменений везде

и за неимением ответов какие абзацы якобы непоняты повторяю:

задача и МЫ:
сравнение алгоритмов на понятном миллионам языке basic
на 100ооо ячеек применив мой однотипный контроль времени

на сей час есть моя программа развивающаяся
и 1 или 2 чужие программы непонятные
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
08.05.2018, 09:49
Цитата Сообщение от sfinx78 Посмотреть сообщение
"написан профессионалами" в худшем смысле слова "написан"
на массово непонятном языке и вдобавок медленно работающий
Вы И ЛЫСАЯ СОБАКА вообще поняли о чём вам говорят? Походу нет.

Цитата Сообщение от sfinx78 Посмотреть сообщение
команда типа sort не интересует
интересуют именно циклы для массового понимания ускорения
Тот самый sort и содержит внутри все алгоритмические оптимизации про которые
вы и ЛЫСАЯ СОБАКА читать отказались, а также дополнительную И ЛЫСУЮ СОБАКУ
в придачу, как бонус.

Цитата Сообщение от sfinx78 Посмотреть сообщение
"написан профессионалами" в худшем смысле слова "написан"
на массово непонятном языке и вдобавок медленно работающий
Уважаемый И ЛЫСАЯ СОБАКА, а много софта вы написали на массово понятном языке?
Вот прямо по порядку перечислите. Посмотрим что за редкий профи тут критикует.
Попытка уйти от ответа будет считаться полным обсёром со стороны вас И ЛЫСОЙ СОБАКИ.

Цитата Сообщение от sfinx78 Посмотреть сообщение
а 2-й якобы не понимает не приводя непонятные абзацы
Вопросы вам по поводу вашей ЛЫСОЙ СОБАКИ уже были заданы. Но вы их проигнорировали.
Так что не обессудьте.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.05.2018, 09:49
Помогаю со студенческими работами здесь

Не работает QuickSort
Скажем так написал быструю сортировку, вроде по правилам, но как не странно она у меня не...

Выполнить перестановку половины младших разрядов числа на место половины старших разрядов
Помогите решить задачу в Basic Составить программу, которая для задонного целого числа N выполняет...

В построенной таблице выделить числа из первой половины интервала одним цветом, а из второй половины - другим
В общем вот код, но компьютер выдает ошибку, помогите исправить. Вариант 1. Заполнить...

Управление COM-1 портом в QBasic
Никак не пойму как посылать и считывать данные с СОМ-1 порта в QB. Слашал про операторы (функции):...

Задачи QBasic
Задачи по QBasic :huh: 1)В воображаемом квадрате заданного размера построить совокупность n*n...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера 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 с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru