Python и МЫ
Данная тема развивает темы: Учим C# зная basic
Учу EXCEL за 6 минут в избранном у около 70 здешних
Учим c# windows forms зная basic
и наверняка подходит под форум Торговые роботы
Сейчас цель показать: посмотрев случайные видео уроки Python
легко и просто научиться программировать хоть что-то
и читать чужие программы и для начала проверять программы онлайн
Список программ ведёт в онлайн компилятор
QUAD rextester.com/IKMBI48397
FIBR rextester.com/FEEJ49204
SORT rextester.com/ZQSY77323
QUA rextester.com/OJN42859
+ qb64 Рюкзак 0-1 Knapsack 0-1
QUAD угадывает 1 из квадрилиона 10^15 за логарифмические шаги
и повторяет мои давнишние программы на qbasic & qb64 & C#
import random # QUAD rextester.com/IKMBI48397 h1, h2, t, f = 0, 10**15, 0, 0 c = random.randrange(0,h2) #comp h = random.randrange(0,h2) #human while f<1: print(t,c,h) if h<c: print('БОЛЬШЕ') a=h h=int((h+h2)/2) h1=a elif h>c: print('меньше') a=h h=int((h1+h)/2) h2=a else: print('угадано за', t, 'шагов') f=1 t=t+1
fi1=fi2=fi3=1 # FIBR rextester.com/FEEJ49204 for da in range(1, 88): print("."*(20-len(str(fi3))), end=' ') print(fi3) fi3 = fi2+fi1 fi1 = fi2 fi2 = fi3Результат должен быть ровный столбец:
................... 1 ................... 2 ................... 3 ....... 6557470319842 ...... 10610209857723 ...... 17167680177565 .. 420196140727489673 .. 679891637638612258 . 1100087778366101931
from random import randint #sort rextester.com/ZQSY77323 N=10 a = [1] for i in range (1,N): a[i]=a.append(i) a[i]=randint(1,10) print(a[i], end=' ') print() for i in range (0,len(a)-1): for j in range (i,len(a)): if a[i]>a[j]: t=a[i] a[i]=a[j] a[j]=t for i in range (1,len(a)): print(a[i], end=' ')
Пример:
5 3 4 9 6 3 4 5 6 9
a,b,c= 1, 6, 5 # QUA rextester.com/OJN42859 d=(b*b)-(4*a*c) if d<0: x1='без ' x2="решения" else: x1=(-b+(d**0.5))/(2*a) x2=(-b-(d**0.5))/(2*a) print(a*x1*x1 +b*x1 +c) print(a*x2**2 +b*x2 +c) print(x1,x2)Ответ: «без решения» или сейчас:
0 0 -1 -5
Open "knapsack.txt" For Output As #1 N=7: L=5: a = 2^(N+1): Randomize Timer 'knapsack.bas DANILIN Dim L(N), C(N), j(N), q(a), q$(a), d(a) For m=a-1 To (a-1)/2 Step -1: g=m: Do ' sintez shifr q$(m)=LTrim$(Str$(g Mod 2))+q$(m) g=g\2: Loop Until g=0 q$(m)=Mid$(q$(m), 2, Len(q$(m))) Next For i=1 To N: L(i)=Int(Rnd*3+1) ' lenght & cost C(i)=10+Int(Rnd*9): Print #1, i, L(i), C(i): Next ' origin For h=a-1 To (a-1)/2 Step -1 For k=1 To N: j(k)=Val(Mid$(q$(h), k, 1)) ' from shifr q(h)=q(h)+L(k)*j(k)*C(k) ' 0 or 1 d(h)=d(h)+L(k)*j(k) Next If d(h) <= L Then Print #1, d(h), q(h), q$(h) Next max=0: m=1: For i=1 To a If d(i)<=L Then If q(i) > max Then max=q(i): m=i Next Print #1,: Print #1, d(m), q(m), q$(m): EndРезультат сокращён вручную: там длины и интегралы и наибольшая сумма произведений
1 2 17 2 2 14 3 2 17 4 1 11 5 2 18 6 3 14 7 3 10 5 73 1101000 2 28 0100000 5 81 0011100 !!! 3 45 0011000 5 76 0010010 2 36 0000100 5 81 0011100
n=5; N=n+1; G=5; a=2**N # N=7: L=5: a = 2^(N+1): 'knapsack.bas DANILIN L=[];C=[];e=[];j=[];q=[];s=[] # Dim L(N), C(N), j(N), q(a), q$(a), d(a) d=[];L=[1]*n;C=[1]*n;e=[1]*a # KNAPSACK 0-1 DANILIN j=[1]*n;q=[0]*a;s=[0]*a;d=[0]*a # https://rextester.com/BCKP19591 from random import randint # Randomize Timer for i in range(0,n): # For i=1 To N L[i]=randint(1,3) # L(i)=Int(Rnd*3+1) C[i]=10+randint(1,9) # C(i)=10+Int(Rnd*9) print(i+1,L[i],C[i]) # Print i, L(i), C(i): Next print() for h in range(a-1,(a-1)//2,-1):# For m=a-1 To (a-1)/2 Step -1: g=m: Do b=str(bin(h)) # q$(m)=LTrim$(Str$(g Mod 2))+q$(m): g=g\2: Loop Until g=0 e[h]=b[3:len(b)] # q$(m)=Mid$(q$(m), 2, Len(q$(m))): Next for k in range (n): # For k=1 To N: j[k]=int(e[h][k]) # j(k)=Val(Mid$(q$(h), k, 1)) ' from chifer q[h]=q[h]+L[k]*j[k]*C[k] # q(h)=q(h)+L(k)*j(k)*C(k) ' 0 or 1 d[h]=d[h]+L[k]*j[k] # d(h)=d(h)+L(k)*j(k): Next if d[h]<= G: # If d(h) <= L Then print(e[h], G, d[h],q[h]) # Print #1, d(h), q(h), q$(h): Next print() max=0; m=1 # max=0: m=1: for i in range(a): # For i=1 To a if d[i]<=G and q[i]>max: # If d(i)<=L Then If q(i) > max max=q[i]; m=i # Then max=q(i): m=i: Next print (d[m], q[m], e[m]) # Print #1,: Print #1, d(m), q(m), q$(m): End
# Mass Cost 1 2 12 2 3 17 3 1 14 4 3 17 5 1 13 Chifer Mass Cost 11000 5 5 75 10101 5 4 51 01001 5 4 64 00111 5 5 78 !!! 00110 5 4 65 00101 5 2 27 00000 5 0 0 Mass MAX Chifer 5 78 00111
ссылка без счётчика включает просмотр
cloud.mail.ru/public/p495/7eiY8sbwB
и ещё возможны картинки из видео
видео пол-часа про начало программирования C#
неизвестного автора инверсией переведено в тёмный фон
зато 2-я часть непонятная и не прилагается
неизвестного автора понятные и ещё увеличены
cloud.mail.ru/public/VusB/6tPEgexsv
и в онлайн компиляторы несовместимо
поэтому предлагается универсальное...
Заполнение массива случайными целыми от -100 до 100
и вывод на экран
Excel Эксцель
=случмежду(-100;100)
=случмежду(0;200)-100
rextester.com/CRPU41269
Дерзайте
если так уж хочется использовать библиотеку random, а не numpy, то:
a = [random.randrange(-100,100) for _ in range(N)]
Если так уж хочется распечатать каждое число на отдельной строке, то:
print(*a, sep='\n')
_1__2__3__4__5
_2__4__6__8_10
_3__6__9_12_15
_4__8_12_16_20
_5_10_15_20_25
где '_' = пробел и каждое значение i*j
в 8 строк программы
? возможно ли короче или мож стандарт какой ?
проверка: сохраняются ли отступы
for i in range (1,6): # TABL rextester.com/TIDN80674
for j in range (1,6):
x=i*j
if x<10:
print('',x, end=' ')
else:
print(x, end=' ')
print ()
число займёт 2 позиции: "%2d" % значение
for i in range (1,6):
for j in range (1,6):
print ("%2d" % (i*j),end=' ')
print()
_1__2__3__4__5
_2__4__6__8_10
_3__6__9_12_15
_4__8_12_16_20
_5_10_15_20_25
3-строчная программа ниже работает:
rextester.com/XZABEI1536
вот в три строчки:
заполняем:
a = [[i * j for i in range(1, 6)] for j in range(1, 6)]
переводим в list of str:
b = [[' ' + str(v) if v < 10 else str(v) for v in row] for row in a]
распечатываем:
print(*[' '.join(row) for row in b], sep='\n')
return [x for x in range(2,val+1) if all((x%y for y in range(2,1+int(x**0.5))))]
За 500руб, расскажу, что происходит
и в данной теме чем проще тем лучше
500р возможно сэкономить сахар не покупая
И напрасно. Простенький код на страничку без 3-4 оределений функций (def) и их применения в коде программы уже перестает читаться. Вы и сами в своем коде уже через 1-2 неделю перерыва с трудом разберетесь. Эт я по себе сужу.))
Не говоря уж о более сложных программах, где уже не только def, но и class нужны.
Макрос Word заменяет буквы русские на похожие буквы импортные
что затрудняет интернет поиск на форумах и др.… разработка 1999г.
ещё при старом режиме
Sub IMPORTNYE()
'
Dim N(17), y(17) As Variant
N(1) = «у»: y(1) = «y»
N(2) = «е»: y(2) = «e»
N(3) = «Н»: y(3) = «H»
N(4) = «х»: y(4) = «x»
N(5) = «а»: y(5) = «a»
N(6) = «р»: y(6) = «p»
N(7) = «о»: y(7) = «o»
N(8) = «с»: y(8) = «c»
N(9) = «Е»: y(9) = «E»
N(10) = «Х»: y(10) = «X»
N(11) = «В»: y(11) = «B»
N(12) = «А»: y(12) = «A»
N(13) = «Р»: y(13) = «P»
N(14) = «О»: y(14) = «O»
N(15) = «С»: y(15) = «C»
N(16) = «М»: y(16) = «M»
N(17) = «Т»: y(17) = «T»
Selection.HomeKey Unit:=wdStory
ActiveWindow.View.Type = wdNormalView
ActiveWindow.ActivePane.View.Zoom.PageFit = wdPageFitBestFit
For i = 1 To 17
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = N(i)
.Replacement.Text = y(i)
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = True
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
Next i
Selection.EndKey Unit:=wdStory
ActiveWindow.View.Type = wdPageView
ActiveWindow.ActivePane.View.Zoom.PageFit = wdPageFitBestFit
End Sub
Вероятность и МЫ
Школьные математические олимпиады 1990-х годов включали
задачи по теории вероятностей и на вопрос как выиграть
в лотерею отвечал: тиражи проигрышные пропустить
Школа мало изучает простые дроби и интегралы визуально
хотя интегральные задачи денежные решаются ежедневно
и больше понимая люди могли бы рассчитывать оптимально
В школе была придумана программа свой ключ где алгоритм
синтезировал независимый ключ любому пользователю
что используют современные программы при регистрации
Расчётные программы на бэйсик сейчас делал бы в Excel
и вообще ячейки Excel: развитие языка Basic
Формулы использовались простейшие где максимально
сложная функция: факториал перемножение целых чисел
Визуализация очевидная для меня: многим незнакома
например соединение множества точек между собой
что мы программировали на информатике в школе оказывается
встречается во многих задачах и создаётся таблица
пирамида например для 3-х переменных АБВ пары АБ АВ БВ
помогают понять многие задачи где есть связи точек
будь то сортировка или транспорт или варианты
причём формула количества связей X=N*(N-1)/2 в общем виде
включает факториал и помогает считать варианты в уме
В 21 веке интересовали лотереи где доступны вероятности
от 25% равно четверть до 80% равно 4/5-х и главный принцип:
возможность остановиться в любую минуту исключив азарт
Наиболее дальновидно оказалось изучение событий подряд
и в 2010-х годах мной самостоятельно вычислено:
если умножение постоянных вероятностей вычисляет формула
C+p^N=1 тогда N = LOG(1-C)/LOG(1-p) где
C — вероятность выигрыша гарантированного
p — вероятность выигрыша события
Допустим нужна гарантия угадывания c=99% вероятности p=25%
формула понятная людям принимает вид 0,99+0,25^N=1
Значит сделав N ходов мы получим выигрыш с вероятностью 99%
и подставив в формулу выше N = LOG(1-0,99)/LOG(1-0,25) =16
Значит для вероятности 25% видя 16 раз одинаковых случаев
далее с вероятностью 99% следующий шаг изменит признак
однако вероятность проигрыша 1% остаётся и возможно
составить таблицу вероятности события и вероятности угадать
где результат расчётов: количество одинаковых подряд
Упрощённо возможно рассчитывать для c=99%: N = 7+(5*(1/p-2))
например для p=0,25 N = 7+(5*(1/0,25-2)) = 17
причём график: гипербола и похожие формулы нигде не обнаружены
Скачав дюжину книг теории вероятностей и распознав и индексируя
формулы с логарифмами расчёта подряд будто прячутся
хотя в интернете подобные расчёты размещали в темах по экономии
Запомнив значения формул для дюжины вероятностей сами формулы
кажутся ненужными до расчётов новых значений
Двоичные бинарные 0 или 1 возможно контролирует принцип x01y01
где после множества нулей пропущенных не участвуя
далее надежда якобы быстро появится признак выигрышный
и там где признаков много лучше контролировать все признаки
Деление одинаковых событий подряд встречается в технике
например рельсы разделены против теплового удлинения
и даже дыхание и питание и получки чередуют актив и пассив
Изобретён квадрат экономии объединяющий знания про логарифм
где повышение ставок по вертикали переходит в постоянные ставки
по горизонтали и выигрыш поглощает предыдущие проигрыши столбца
Причём заполнять квадрат экономии возможно по правилам
или произвольно и оформляется вручную как бумажки на столе
или на языке программирования или в Excel
График баланса включает минимаксы пики шпили иглы и есть
алгоритмы определяющие критические точки сравнивая значения
выше и ниже и посредине и распознавая паттерны и есть
алгоритмы ставящие копейки и получая результаты милли игр
и выявив паттерн далее 1 тираж ставя суммы крупнее
Знания помогли выигрывать конкурсы бесплатных вариантов
с настоящими призами где затраты на участие отсутствовали
и возможно появятся лотереи с перевесом в пользу игрока
плюс возможность угадать с вероятностью 50% есть в каждой лотерее
Спортивные ставки из-за проблем с выплатами не заинтересовали
зато собрана статистика игр в футбол за год и многие результаты
распределяются как простые дроби
Боты собирают результаты игр даже без участия и далее знания
применимы без автоматизации чтобы выигрывать бесплатные конкурсы
В конце 2010-х годов математические форумы спрашивали подобные
расчёты и вызывали странные ответы мол тема сразу закрывается
Рассмотрев задачу разложения массива чисел на спектры повторения
2-ичных признаков создаётся биномиальная пирамида значений спектров
и если слои спектры отсутствуют выявляются массивы не случайные
Например массив тысяч элементов 1 0 1 0 1 имеет постоянные разницы
признаков максимум 1 подряд и заполнится единственный спектр
Массив тысяч случайных элементов 1 0 1 0 1 создаёт цепочки
подобных подряд и одинаковое количество цепочек подряд распределяется
биномиально, вида: 1 подряд 64 штуки, тогда 2 подряд 32 штуки
и 3 подряд 16 штук и т.д., значит исследуемы массив,
распределивший цепочки подряд биномиально: случайный
Природные шумы заполняют спектры без пауз и теоретически различимы
в то время как псевдо случайные массивы заполнят все спектры
Логарифмические волны вероятности повышают надёжность угадать
показывая превышает ли количество одинаковых подряд теоретические
Изучая в 2010-х годах языки программирования современные
удалось выйти на форумы программистов российские и иностранные
плюс получено свидетельство о гос регистрации программы для ЭВМ
Также зарегистрирован алгоритм Русская сортировка половинами
Понимание теоретически помогает понимать достоверность случайных
процессов например выборов и генераторов псевдо случайных чисел
Российские форумы якобы заинтересованных изучать случайности
в реальности анти научные и никакие формулы не знают
да и литература и кино показывают ошибочные стратегии игр
Иностранный форум в ответ подарил дюжину новейших статей
по вероятности и по квантовой запутанности и на другие темы
однако новые статьи все на иностранном языке
причём мои формулы иностранцам неизвестные не рассматриваются
и ныне иноязычные статьи на русский язык полностью не переведены
За время общения по программированию мной созданы алгоритмы:
разукрашивание цветом как остаток от деления на период
плюс угадывание чисел в 1 строку плюс компьютер угадывает число
до триллиона за логарифмическое количество шагов
плюс алгоритм рюкзак оптимального выбора плюс проверки в Excel
Excel совместимые среды рассчитывают и строят графики за минуты
что на языках программирования для большинства недостижимо
Существуют онлайн компиляторы языков программирования проверяющие
расчёты без установки языка в компьютер и встраиваются на страницы
Обратился на форум программистов сразу предлагая массив иностранных
статей однако переводчики не откликнулись
Оформил статьи о фальсификации случайности используя материал
заявки гос регистрации программы для ЭВМ и сам комментировал
Около 100 комментаторов сомневались и разделились биномиально:
непонявшие токсичные 56 %
непонявшие позитивные 24 %
понявшие токсичные 14 %
понявшие позитивные 6 %
Каждый слой превышает ближайший слой примерно в 2 раза
Биномиальное распределение процентов 56 +24 +14 +6 =100 возможно
свойственно процессам где создаётся таблица 2 на 2 элемента
и заметна закономерность: 24% в 4 раза больше 6% и 56%/14% =4
Квадрат 10x10=100 клеток делит точка в месте 2 на 3 клетки
и получаются целые зоны 2x3=6 и 2x7=14 и 3x8=24 и 7x8=56
Читатели сами себе противоречили мол статья якобы неполная
на что отвечаю: будет 2-я часть и в ответ: всё же рассказано
Обе статьи получили множество минусов и отключили от форума
зато оставалась возможность 1 раз включиться ещё раз
что использовал разместил завершающую статью про языки
и про алгоритмы быстрого обучения языкам программирования
Статистика публикаций показывает: за минувшие годы просмотрены
тысячи раз и посещают ежедневно и мне поиск рекомендовал моё
если искал что-нибудь про случайные числа
Независимый сайт сканирует форумы и соцсети и собирает статьи
про искусственный интеллект и списал себе мои статьи
и ещё зеркало исходного форума включает темы без комментариев
Данный текст проверенный донельзя для многих звучит как бред
Дальнейшее развитие: применять формулы в жизни
и реализовать принцип: деление подобных случаев подряд
1. массив 1-мерный
2. массив 2-мерный
3. числовые
4. строковые
5. время
6. условие
7. перебор
8. цикл
9. печать
10. функции
11. файлы
12. комментарии
Курьёз 2019 года:
qbasic угадай число: 1 строка
qb64: guess number: 1 line
1 IF Russia = 0 THEN Russia = 2222: RANDOMIZE TIMER: num = INT(RND * 100) + 1: GOTO 1 ELSE IF Russia <> 0 THEN INPUT n: IF n < num THEN PRINT «MORE»: GOTO 1 ELSE IF n > num THEN PRINT «less»: GOTO 1 ELSE IF n = num THEN PRINT «da»: END ELSE GOTO 1 'DANILIN Russia 9-9-2019 guessnum.bas
C# угадай число: 1 строка
C# guess number: 1 line
using System; using System.Text; namespace DANILIN { class Program { static void Main(string[] args) { Random rand = new Random(); int Russia = 0; int n = 0; int num = 0; dav: if(Russia == 0) {Russia = 2222; num = rand.Next(10)+1; goto dav; } else if (Russia != 0) {Console.Write("? "); n = rand.Next(10)+1; Console.Write(" {0} {1} ", num, n); } if (n < num) { Console.WriteLine(«MORE»); goto dav; } else if (n > num) { Console.WriteLine(«less»); goto dav; } else if (n == num) {Console.Write(«da»); } else goto dav; } } } // n = Convert.ToInt32(Console.ReadLine()); Console.ReadKey(); DANILIN Russia 9-9-2019 rextester.com/XZGC82928 guessnum.cs
n='palindrom'
for i in range(len(n)-1,-1,-1):
print (n[i].upper(),end="")
MORDNILAP
+Этюд
s=«abcdefghij»
print (s[2:6])
cdef
def g(a,b):
g=(a**2+b**2)**0.5
return g
z,x=3,4
s=g(z,x)
print (s)
5.0
N=10
a=[i for i in range(N-1,-1,-2)]
print (a)
[9, 7, 5, 3, 1]
в учебниках пока не встречал
массив N нулей
N=10
a=[]
a.append([0]*N)
print (a)
2-мерный массив 3х5: важна фантазия и визуализация
a=[]
a=[[int(i+j) for i in range (3)] for j in range (5)]
print (a)
[[0, 1, 2], [1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5, 6]]
Диагонали матрицы 5х5
for k in range (5):
print (a[k][k])
print (a[k][4-k])
Встраиваем Питон Python
сайт trinket.io ждём и откроется Python
<iframe src=«trinket.io/embed/python/e0d27a00c6» width=«100%» height=«356» frameborder=«0» marginwidth=«0» marginheight=«0» allowfullscreen></iframe>программ несколько отклонил из-за случайных
зато включилось угадывание из миллиарда
слева кнопка 3 линии и там Embed Iframe
встраивается на многие сайты
Программа MILLIARD угадывает 1 из тысяч на qbasic qb64
h1=0: h2=10^3:t=1:f=0: Randomize Timer 'daMilliard.bas
human = Int(Rnd*h2) 'human
comp = Int(Rnd*h2) 'comp
While f < 1
Print t; «human =»; human; " comp ="; comp;
If comp < human Then
Print " MORE": a=comp: comp=Int((comp+h2)/2): h1=a
Else If human < comp Then
Print " less": a=comp: comp=Int((h1+comp)/2): h2=a
Else If human=comp Then
Print " win by "; t; " steps": f=1
End If: End If: End If: t = t + 1
Wend: End
Диапазон от 1 до 100 :
1 40 11 MORE
2 40 55 less
3 40 33 MORE
4 40 44 less
5 40 38 MORE
6 40 41 less
7 40 39 MORE
8 40 40 win by 8 steps
Программа C# Миллиард угадывающая 1 из 1'000'OOO'ooo
за =log(10^9;2) за 30 ходов
https://rextester.com/DYVZM84267
using System; using System.Text; //daMilliard.cs
namespace DANILIN
{ class Program
{ static void Main(string[] args)
{ Random rand = new Random();int t=0;
int h2=100000000; int h1=0; int f=0;
int comp = rand.Next(h2);
int human = rand.Next(h2);
while (f<1)
{ Console.WriteLine();Console.Write(t);
Console.Write(" ");Console.Write(comp);
Console.Write(" ");Console.Write(human);
if(comp < human)
{ Console.Write(" MORE");
int a=comp; comp=(comp+h2)/2; h1=a; }
else if(comp > human)
{ Console.Write(" less");
int a=comp; comp=(h1+comp)/2; h2=a;}
else {Console.Write(" win by ");
Console.Write(t); Console.Write(" steps");f=1;}
t++; }}}}
using System;using System.Text; // KNAPSACK 0-1 DANILIN
namespace Knapsack { class Program { static void Main()
{ int n=5; int G=5; int u=n+1; int a=Convert.ToInt32(Math.Pow(2,u));
int[] L = new int[n]; int[] C = new int[n]; int[] j = new int[n];
int[] q = new int[a]; int[] S = new int[a]; int[] d = new int[a];
int dec; int i; string[] e = new string[a];
int h; int k; int aa; int max; int m; Random rand = new Random();
for (i=0; i<n; i++) // rextester.com//KNADH83291
{L[i]=1+rand.Next(3); C[i]=10+rand.Next(9);
Console.Write(i+1); Console.Write(" ");
Console.Write(L[i]); Console.Write(" ");
Console.Write(C[i]);Console.WriteLine();
} Console.WriteLine();
for (h = a-1; h>(a-1)/2; h--)
{ dec=h; while (dec > 0)
{ e[h] = dec % 2 + e[h]; dec/=2; }
if (e[h] == "") {e[h] = «0»;}
e[h]=e[h].Substring(1,e[h].Length-1);
for (k=0; k<n; k++)
{j[k]=Convert.ToInt32(e[h].Substring(k,1));
q[h]=q[h]+L[k]*j[k]*C[k];
d[h]=d[h]+L[k]*j[k];}
if (d[h]<= G)
{ Console.Write(G); Console.Write(" ");
Console.Write(d[h]); Console.Write(" ");
Console.Write(q[h]); Console.Write(" ");
Console.WriteLine(e[h]);}
} Console.WriteLine();
max=0; m=1;
for (i=0; i<a; i++)
{ if (d[i]<=G && q[i]>max)
{ max=q[i]; m=i;}}
Console.Write(d[m]); Console.Write(" ");
Console.Write(q[m]); Console.Write(" ");
Console.WriteLine (e[m]);}
}}
using System; // Knapsack C# binary DANILIN
using System.Text; // rextester.com/YRFA61366
namespace Knapsack
{
class Knapsack
{
static void Main()
{
int n = 7;
int Inside = 5;
int all=Convert.ToInt32(Math.Pow(2,(n+1)));
int[] mass = new int[n];
int[] cost = new int[n];
int[] jack = new int[n];
int[] quality = new int[all];
int[] amount = new int[all];
int i; // circle
int k; // circle
int dec;
string[] bin = new string[all];
int list;
int max;
int max_num;
Random rand = new Random();
for (i=0; i<n; i++)
{
mass[i]=1+rand.Next(3);
cost[i]=10+rand.Next(9);
Console.WriteLine("{0} {1} {2}", i+1, mass[i], cost[i]);
}
Console.WriteLine();
for (list = all-1; list>(all-1)/2; list--)
{
dec=list;
while (dec > 0)
{
bin[list] = dec % 2 + bin[list]; // from 10 to 2
dec/=2;
}
if (bin[list] == "")
{
bin[list] = «0»;
}
bin[list]=bin[list].Substring(1,bin[list].Length-1);
for (k=0; k<n; k++) // inside 01
{
jack[k]=Convert.ToInt32(bin[list].Substring(k,1));
quality[list]=quality[list]+mass[k]*jack[k]*cost[k]; // integral of costs
amount[list]=amount[list]+mass[k]*jack[k]; // integral of mass
}
if (amount[list]<= Inside) // current mass < Knapsack
{
Console.WriteLine("{0} {1} {2} {3}", Inside, amount[list], quality[list], bin[list]);
}
}
Console.WriteLine();
max=0;
max_num=1;
for (i=0; i < all; i++)
{
if (amount[i]<=Inside && quality[i]>max)
{
max = quality[i]; max_num =i ;
}
}
Console.WriteLine("{0} {1} {2}",amount[max_num],quality[max_num],bin[max_num]);
}
}
}
import time; from random import randint # PRIME_mult.py russian DANILIN
p = randint(1, 2**25); s=int(p**0.5); f=0; j=2; q=0; # p=2**31-1;
while f < 2: # rextester.com/QFZD94890
if j >= s: # 2**31-1 = 2_147_483_647
f=2 # max 2_308_621_829
if p % j == 0:
q=1
print (p,j,int(p/j))
j+=1
if q != 1:
print(p," Prime", p/10**9, " BillionS")
print(time.perf_counter(), " seconds")
QB64: число простое или множители
Dim p As Long: f=0: j=2: q=0: t=Timer: ' p = 2^31-1:
Randomize Timer: p = int(rnd*2^25): s=p^0.5 ' PRIME_mult.bas russian DANILIN
While f < 1 ' PRIME_.bas russian DANILIN
If j >= s Then f=2
If p Mod j = 0 Then q=1: Print p, j, Int(p/j)
j = j + 1
Wend
If q <> 1 Then Print p, " Prime", p/10^9, " BillionS"
Print p, Timer — t
C#: число простое или множители
using System; using System.Text; // PRIME_mult.cs russian DANILIN
namespace prime // rextester.com/VBXFL2777
{ class Program
{ static void Main(string[] args)
{ var start = DateTime.Now; int f=0; int j=2; int q=0;
Random rand = new Random(); // long p = 2147483648-1;
long p = rand.Next(Convert.ToInt32(Math.Pow(2, 22))-1);
long s = Convert.ToInt32(Math.Pow(p,0.5));
while (f < 1)
{ if (j >= s)
{ f=2; }
if (p % j == 0)
{ q=1; Console.WriteLine("{0} {1} {2}",p,j,Convert.ToInt32(p/j));}
j++;
}
if (q != 1) { Console.WriteLine(«Prime {0} BillionS», p); }
var finish = DateTime.Now;
Console.WriteLine(finish — start);
Console.ReadKey();
}}}
xonix and persecuting flashing enemy
my engine: islands to include can not
this is Neuro Net & Artificial Intelligence
& rebel of machine
Randomize Timer: b = 15: a = 45 'b = Int(Rnd*15+10): a = Int(Rnd*25+10): ' xonixPRO.bas
y = Int(Rnd * (b-3)+3): x = Int(Rnd * (a-3)+3): d=Int(Rnd * 4+1)
'y = 5: x = 5: b = 10: a = 20: d=1 ' xonixPRO.bas
For i = 1 To a: Print "#";: Next: Print ' area
For j = 1 To b-2: Print "#";: For k = 1 To a-2: Print ".";: Next: Print "#": Next
For i = 1 To a: Print "#";: Next: p = 5: s = 5
For q = 0 To 1000: _Delay .1:
If q Mod 30 = 0 Then
Locate p, s: Print " ":
p = Int(Rnd * (b-3)+3): s = Int(Rnd * (a-3)+3)
End If
Locate p, s: Print " ": Locate y, x: Print " ":
If d=1 Then If (y-1 = 1) And (x+1 = a) Then d=3
If d=1 Then If (y-1 > 1) And (x+1 = a) Then d=4
If d=1 Then If (y-1 = 1) And (x+1 < a) Then d=2
If d=1 Then y = y-1: x = x+1
If d=2 Then If (y+1 = b) And (x+1 = a) Then d=4
If d=2 Then If (y+1 < b) And (x+1 = a) Then d=3
If d=2 Then If (y+1 = b) And (x+1 < a) Then d=1
If d=2 Then y = y+1: x = x+1
If d=3 Then If (y+1 = b) And (x-1 = 1) Then d=1
If d=3 Then If (y+1 < b) And (x-1 = 1) Then d=2
If d=3 Then If (y+1 = b) And (x-1 > 1) Then d=4
If d=3 Then y = y+1: x = x-1
If d=4 Then If (y-1 = 1) And (x-1 = 1) Then d=2
If d=4 Then If (y-1 > 1) And (x-1 = 1) Then d=1
If d=4 Then If (y-1 = 1) And (x-1 > 1) Then d=3
If d=4 Then y = y-1: x = x-1
If p < y Then p = p+1
If p > y Then p = p-1
If s < x Then s = s+1
If s > x Then s = s-1
Locate p, s: Color 2 + q Mod 3: Print "#":
Locate y, x: Color 7: Print "@"
Next
Randomize Timer: b = Int(Rnd*10+15): a = Int(Rnd*10+15): ' xonixMAS.bas
N = Int(Rnd*5+3): Dim d(N), y(N), x(N), q$(N), c(N): _Font 17
For e = 1 To N: q$(e) = Mid$(Str$(e), 2, 1): Next
For i = 1 To N
y(i) = Int(Rnd*(b-3)+3): x(i) = Int(Rnd*(a-3)+3): d = Int(Rnd*4+1)
d(i) = Int(Rnd*4)+1: c(i) = Int(Rnd*5+1)
Next 'y(i)=5: x(i)=5: b=10: a=20: d=1 ' xonix.bas DANILIN
For i = 1 To a: Print "#";: Next: Print ' area
For j = 1 To b-2: Print "#";: For k = 1 To a-2: Print ".";: Next: Print "#": Next
For i = 1 To a: Print "#";: Next
For q = 1 To 1000: _Delay .08:
For i = 1 To N: Locate y(i), x(i): Print " "
If d(i)=1 Then If (y(i)-1=1) And (x(i)+1=a) Then d(i)=3
If d(i)=1 Then If (y(i)-1>1) And (x(i)+1=a) Then d(i)=4
If d(i)=1 Then If (y(i)-1=1) And (x(i)+1<a) Then d(i)=2
If d(i)=1 Then y(i)=y(i)-0.5*(1+i mod 2): x(i)=x(i)+0.5*(1+i mod 2)
If d(i)=2 Then If (y(i)+1=b) And (x(i)+1=a) Then d(i)=4
If d(i)=2 Then If (y(i)+1<b) And (x(i)+1=a) Then d(i)=3
If d(i)=2 Then If (y(i)+1=b) And (x(i)+1<a) Then d(i)=1
If d(i)=2 Then y(i)=y(i)+0.5*(1+i mod 2): x(i)=x(i)+0.5*(1+i mod 2)
If d(i)=3 Then If (y(i)+1=b) And (x(i)-1=1) Then d(i)=1
If d(i)=3 Then If (y(i)+1<b) And (x(i)-1=1) Then d(i)=2
If d(i)=3 Then If (y(i)+1=b) And (x(i)-1>1) Then d(i)=4
If d(i)=3 Then y(i)=y(i)+0.5*(1+i mod 2): x(i)=x(i)-0.5*(1+i mod 2)
If d(i)=4 Then If (y(i)-1=1) And (x(i)-1=1) Then d(i)=2
If d(i)=4 Then If (y(i)-1>1) And (x(i)-1=1) Then d(i)=1
If d(i)=4 Then If (y(i)-1=1) And (x(i)-1>1) Then d(i)=3
If d(i)=4 Then y(i)=y(i)-0.5*(1+i mod 2): x(i)=x(i)-0.5*(1+i mod 2)
For k=1 To N-1: For m=k+1 To N
If y(k)=y(m) And x(k)=x(m) Then c(k)=Int(Rnd*5+1):c(m)=Int(Rnd*5+1)
Next: Next
Locate y(i), x(i): Color c(i): Print q$(i): Next
Next
А навесил на сундук свой замок А и выслал В
В получил сундук и навесил свой замок В
и отправил сундук А
А получил сундук и снял свой замок А
и отправил сундук В
В получил сундук и снял свой замок В
Вопрос: возможно ли подобная пересылка на компьютере?
Task about chest and locks on computer is not solvable
A his lock A on chest and sent it to B
B received chest and hung his lock B in
and sent chest to A
A received chest and removed his lock A
and sent chest to B
B received a chest and removed his lock B
Question: Is such a transfer possible on a computer?