ВСЕОБУЧ Компьютер Интернет Ютюб lisp и Учим C# qbasic Excel
КНИГИ детям и взрослым о детях
242 Мб БЕСПЛАТНО yadi.sk/d/OfMlaKYw3TBZ4q
возможно смотреть внутри архива
и скачивать отдельные книги
и текстовые книги pdf переведены ещё в txt
КНИГИ детям и взрослым о детях
Обучение Python cloud.mail.ru/public/VusB/6tPEgexsv
Обучение C# cloud.mail.ru/public/p495/7eiY8sbwB
СКАЧИВАЙТЕ АРХИВ И ВИДЕО
Обучение EXCEL минут 12 minutes EXCEL Learning SSyoutube.com/watch?v=NMaBysomvv4
Статья Программы kenokeno.ucoz.ru/publ/prog/1-1-0-11
Алгоритмы: Rosetta Code или RosettaCode
rosettacode.org/wiki/Guess_the_number#QB64_2
qb64forum.alephc.xyz/index.php?topic=3999.0
Фибоначчи Fibonacci
rosettacode.org/wiki/Fibonacci_sequence#Fibonacci_from_Russia
qb64phoenix.com/forum/showthread.php?tid=310&page=2
Fibonacci Formula from Russia & EurAsia
Open "FiboFormula.txt" For Output As #1 ' optional
For i = 1 To 36 ' Russian FiboFormula.bas
f = (1/Sqr(5))*(((1+Sqr(5))/2)^i-((1-Sqr(5))/2)^i)
Print i, f
Print #1, i, f ' optional
Next: End
qb64 qbasic quickbasic
= (1/sqr(5))*(((1+sqr(5))/2)^N-((1-sqr(5))/2)^N)
excel & Python
= (1/Sqrt(5))*(((1+Sqrt(5))/2)^N-((1-Sqrt(5))/2)^N)
= (1/КОРЕНЬ(5))*(((1+КОРЕНЬ(5))/2)^B3-((1-КОРЕНЬ(5))/2)^B3)
C C+ C++ C# C@#$%&
= (1/Math.Sqrt(5))*(((1+Math.Sqrt(5))/2)^N-((1-Math.Sqrt(5))/2)^N)
экранные видео автоматизации автокад 9 мегабайт БЕСПЛАТНО
yadi.sk/d/ggevAvJBYtwWz
Генератор номеров КЕНО НЕ для ставок
а для проверки реальности повтора номеров и десятков НЕсовпадений подряд
результаты пишет в файл в том же каталоге
алгоритм: выбирается случайный номер и даётся случайное приращение
с контролем повторов и нахождения внутри диапазона
и вновь забавно: я придумал в школе в прошлом веке ещё при старом режиме
и в новом веке обнаружил тоже то же иностранное с точностью до названия
я называл алгоритм ВЬЮГА и другие назвали BLIZZARD
скопируйте программу и вставьте в блокнот и
сохраните с любым именем например
KENOKENOucozRU.bas
важнее всего *.bas для qbasic qb64
'KENOKENOucozRU.bas
DIM a(78, 22): CLS
RANDOMIZE TIMER
OPEN "KENO_dav.txt" FOR OUTPUT AS #1
OPEN "KENO_excel.txt" FOR OUTPUT AS #2
FOR s = 1 TO 78: REM tiragey
a(s,1) = INT(RND*80)+1: REM 1-y sluch
22 FOR j = 2 TO 21: REM dlya 20 nomerov
shag = INT(RND*80)+1: REM plus shag
a(s,j) = a(s,j-1)+shag: REM zavisit
IF a(s,j) > 80 THEN a(s,j) = a(s,j)-80: REM uchet 80
NEXT
FOR m = 1 TO 19
FOR n = m+1 TO 20
IF a(s,m) = a(s,n) THEN GOTO 22
IF INKEY$ = " " THEN STOP
NEXT: NEXT
NEXT
FOR v = 1 TO 78
FOR w = 1 TO 19
FOR m = w+1 TO 20
IF a(v,w) > a(v,m) THEN t = a(v,w): a(v,w) = a(v,m): a(v,m) = t
NEXT: NEXT: NEXT
FOR v = 1 TO 78
PRINT #1, v; CHR$(9);
FOR w = 1 TO 19
PRINT #1, a(v,w); CHR$(9);
NEXT: PRINT #1, a(v,20): NEXT
FOR v = 1 TO 20
FOR w = 1 TO 78
PRINT #2, a(w,v); CHR$(9);
NEXT: PRINT #2,: NEXT
КОНЕЦ программы qb64 KENOKENOucozRU.bas
программа синтезирует KENO_dav.txt пригодный для вставки в
excel в столбцы A...T
придуманный мной наобум алгоритм гсч "тригонометрия"
programmersforum.ru/showpost.php?p=1775099&postcount=3
распределение плохое сравнивая чётные\нечётные и малые\большие
зато перетасовка превращает массив в нормальный
я придумал алгоритм Вьюга в школе в прошлом веке
ещё при старом режиме и в нашем веке обнаружил
примерно тоже то же иностранное с названием Вихрь
алгоритм Вьюга: номер 1-й случайный и прибавляется
случайное приращение и контролируется диапазон
и если нужно контролируется повтор номеров
'VYUGA.bas
DIM a(55555)
RANDOMIZE TIMER: CLS
OPEN "VYUGA.txt" FOR OUTPUT AS #1
d=37
a(1) = INT(RND*d)+1
PRINT #1, a(1)
FOR i = 2 TO 55555
a(i) = a(i-1) + INT(RND*3*d)+1
22 IF a(i) > d THEN a(i) = a(i)-d: GOTO 22
PRINT #1, a(i)
NEXT
ideone.com/cPYZad
using System; // VYUGA.cs
namespace VYUGA { public class Program
{ static double w;
static void Main(string[] args)
{ Random rand = new Random();
int d=37;
double s = rand.Next(5000000);
double a = Math.Round(d*s/5000000)+1;
Console.WriteLine(a);
for (int i = 1; i < 255; i++)
{ w = rand.Next(3000000)+1;
double v = Math.Round(w*d/1000000)+1;
a=a+v;
da: if (a>d)
{ a=a-d; goto da; }
Console.WriteLine(a);}
Console.ReadKey(); }}}
и вьюга вдруг сделает нормальной случайность тригонометрическую
проверка показывает распределение хорошее
сравнивая чётные\нечётные и малые\большие
посему ищу алгоритм вида Мерсенна вихрь
kenokeno.ucoz.ru/publ/hotcool/1-1-0-26
Invented by me at random algorithm of RNG
where is trigonometry used
check shows distribution is bad
comparing even\odd and small\large
but shuffling turns array into a normal one
I came up with an algorithm Blizzard at school
in last century even under old regime and in our century
about same too foreign called vortex
Blizzard algorithm: number 1 is random and is added
random increment and control range
and if necessary controlled repetition of numbers
and a Blizzard suddenly makes normal randomness trigonometric
therefore I am looking
for an algorithm of form Mersenne twister c# & qbasic
kenokeno.ucoz.ru/publ/qed/1-1-0-27
что и требовалось доказать
Мценская область
ССЫЛКИ для скачивания ОБУЧЕНИЯ
1 watch?v=_дaIIO2ivqII
2 watch?v=_C94YxZQKlw
3 watch?v=_kZzKnpnvQU
4 watch?v=_rV_Zsl60GA
5 watch?v=_S_yjOiJN5A
6 watch?v=_Sbs9OAoW1U
7 watch?v=_ym8Uh3cXD8
8 watch?v=1hsiZ8b5y3Y
9 watch?v=1VT5XYUJLq0
10 watch?v=2mSmVjLXoyk
11 watch?v=4_H3Ni0ApOQ
12 watch?v=4DsrbOz06mY
13 watch?v=4qv_5euXeGo
14 watch?v=4RN_CVMCNAE
15 watch?v=5koci_nDJLg
16 watch?v=5lrkC7H1AM4
17 watch?v=5MblXMKtGCY
18 watch?v=5uW_RTvyf6w
19 watch?v=5WuDpVcL_sQ
20 watch?v=6JUD5Pge9mk
21 watch?v=7G_ZyWhnndk
22 watch?v=7iZ3XyKIjvM
23 watch?v=7SEEnHJKRU8
24 watch?v=-7YPuljMcKM
25 watch?v=8_KFx8k4L68
26 watch?v=8f1n8YoMK3U
27 watch?v=8v9J-gL_IrI
28 watch?v=9DEay5RtJAA
29 watch?v=9hH9yYRp0qQ
30 watch?v=9VVyLSFrks8
31 watch?v=a7TBu4DIjL4
32 watch?v=boHT4eswwvQ
33 watch?v=BpwajpzJQzQ
34 watch?v=Byj7a65o09c
35 watch?v=DD-2PSxYv0c
36 watch?v=DKd4WexinSM
37 watch?v=E5A3j1GfVLU
38 watch?v=EI7nsfMBmXE
39 watch?v=eWgrqHycrGQ
40 watch?v=F0pVbDRAj9M
41 watch?v=f3MdMqnt3pE
42 watch?v=f9Mszs3JlBE
43 watch?v=FJrP2CMGGrc
44 watch?v=FpNxhpe8kIc
45 watch?v=Ftzf469TN8w
46 watch?v=fycmCyjatvY
47 watch?v=g0VkiqDO9dI
48 watch?v=gFXw1wHx-Bg
49 watch?v=GMdvO4aW_-g
50 watch?v=GPBVUomnUy8
51 watch?v=h08XX_8wLdY
52 watch?v=HNyZi08QHbE
53 watch?v=imeuCacydzM
54 watch?v=IqGFYe3_scA
55 watch?v=ix8_z9Or_XU
56 watch?v=JLfVajoqfyI
57 watch?v=karw5O5gezY
58 watch?v=kukyNCIs2To
59 watch?v=lc-U3gdbgAY
60 watch?v=Llmirpz2k-8
61 watch?v=m660-GKtDyU
62 watch?v=me7wrgrhCfk
63 watch?v=MIyB2JRV0uY
64 watch?v=m-mmE5_3pEg
65 watch?v=mmP352gJ4JA
66 watch?v=mrb2n7ld70U
67 watch?v=mVQ8ESozBdY
68 watch?v=na9VJpb_n_A
69 watch?v=NFOUFWN8lEk
70 watch?v=NigL7JXtM0s
71 watch?v=Nq_9jfy7c-k
72 watch?v=NrCrz-03FYc
73 watch?v=oKyXa8uoAs4
74 watch?v=OQjo-0xK2Qc
75 watch?v=P3q_JHAh5p0
76 watch?v=Pc_6LZGrcDo
77 watch?v=pn18WwSqpNo
78 watch?v=poY_1mtZQfQ
79 watch?v=pZ7Es_Uxo0U
80 watch?v=qAHNdkKUPcg
81 watch?v=qaWmAjC9Alo
82 watch?v=Qji33F0lmb8
83 watch?v=r01LBDPzDwA
84 watch?v=R1_u0ojkPoc
85 watch?v=R72efsuEQSY
86 watch?v=r-qtf_9iJyc
87 watch?v=rR9QmGTUNi8
88 watch?v=Rzd6pb8WCyc
89 watch?v=s0t57CEa7UQ
90 watch?v=Sudwso6llto
91 watch?v=SyuRaNHeX90
92 watch?v=T3UJflAJEQ0
93 watch?v=TlBjad66q1E
94 watch?v=TmEPx01O2lE
95 watch?v=T-oQou5VnwU
96 watch?v=veYTPiDpV84
97 watch?v=VrWygQoOLqw
98 watch?v=VTEFkJnq5A0
99 watch?v=w51694H0IJE
100 watch?v=Wm8mOEM0oEE
101 watch?v=wUkMw2wl4zc
102 watch?v=XABWVSe0W2M
103 watch?v=xg1fZPYmTho
104 watch?v=XLNEQhftk1k
105 watch?v=XTeXgzV6BPY
106 watch?v=xyJBBWT0TbA
107 watch?v=Y7hjmU5y26o
108 watch?v=YBASZVZ2Ni4
109 watch?v=ybgI0XYFyEs
110 watch?v=ydC1lskSvKU
111 watch?v=z0BiD-sAtRI
112 watch?v=ZKFehP3NHb0
Учу EXCEL за 6 минут
entlen.lsp = длины
использую для подсчёта длин
особенно обосабливая по слоям
и реально подсчитывать раздельно разные диаметры
а также применяется в подсчёте всех площадей помещений
ориентируясь на периметр помещения и высоту стен
entlen.lsp = длины
;---
;entlen.lsp — Подсчёт суммы длин выбранных примитивов
;autocad.ru/cgi-bin/f1/board.cgi?t=21732rf
(vl-load-com)
(defun C:ENTLEN (/
NABOR ;Набор примитивов
i ;Счётчик
ENT_i ;i-й примитив из набора NABOR
LEN_all ;Суммарная длина примитивов
LEN_i ;Длина i-го примитива
)
(princ "\nПодсчёт суммы длин выбранных примитивов. ")
(princ "\nВыберите примитивы: ")
;Выбор примитивов [выбираем нужные, отфильтровываем ненужные]
(setq NABOR (ssget
'((-4 . "<OR")
(0 . "*LINE")
(0 . "CIRCLE")
(0 . "ARC")
(0 . "ELLIPSE")
(-4 . "OR>")
)
);end ssget
);end setq
;Сообщение о количестве выбранных примитивов
(princ (strcat "\nВсего выбрано примитивов: " (itoa (sslength NABOR))))
(princ "\n--")
;Установка начальных значений
(setq i 0)
(setq LEN_all 0.0)
;Цикл по набору NABOR
(while (< i (sslength NABOR))
;Определяем Имя i-го примитива из набора NABOR
(setq ENT_i (ssname NABOR i))
;Определяем Длиу i-го примитива из набора NABOR
(setq LEN_i (vlax-curve-getDistAtParam
(vlax-ename->vla-object ENT_i)
(vlax-curve-getEndParam ENT_i)
);end vlax-curve-getDistAtParam
);end setq
(princ (strcat "\n"(itoa (1+ i)) "-й примитив = " (rtos LEN_i) "м"))
;;;Отладка
;;;(redraw ENT_i 3)
;;;(read-line)
;Наращиваем суммарную длину всех выбранных примитивов
(setq LEN_all (+ LEN_all LEN_i))
(setq i (1+ i))
);end while
(princ "\n--")
(princ (strcat
"\nОбщая длина " (itoa (sslength NABOR)) " выбранных примитивов = "
(rtos LEN_all)
"м"
);end strcat
);end princ
(prin1)
);end defun C:ENTLEN
gakson.lsp = аксонометрия
yandex.ru/search/?text=gakson.lsp
google.ru/search?ie=UTF-8&hl=ru&q=gakson.lsp
zam.lsp = массовая замена текстов: заменяется что на что
(defun c:zam ()
(tfind2fun "dn 25 A" "%%c25" 1)
(tfind2fun "dn 20 A" "%%c20" 1)
(tfind2fun "dn 15 A" "%%c15" 1)
(tfind2fun "dn 10 A" "%%c20" 1)
(tfind2fun "dn 0 A" "расчет" 1)
(tfind2fun "L " "Lm " 1)
(tfind2fun ".00" "" 1)
)
tfind2fun.lsp = массовая замена текстов
обслуживается список zam.lsp
tfind2fun.lsp ищем в интернет
yandex.ru/search/?text=tfind2fun.lsp
google.ru/search?ie=UTF-8&hl=ru&q=tfind2fun.lsp
перенумерация подчёркнутого текста автокад
renumbering of underlined text AutoCAD
;; rew.lsp перенумерация подчеркнутого текста
(defun C:REW (/ *error* elist en lname lock lrlist ltbr match rate ss start state txt)
(defun *error* ( msg )
(command "_.undo" "_end")
(if msg
(or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*")
(princ (strcat "\n** Error: " msg " **")))
)
(command)
(princ)
)
(setq lname (getstring "\nВведите имя слоя текста <Стыки>: "))
(if (eq "" lname)(setq lname "Стыки"))
(setq ltbr (tblobjname "layer" lname)
lrlist(entget ltbr)
)
(setq state (cdr (assoc 70 lrlist)))
(if (not (zerop state))
(progn
(setq lock T)
(entmod (subst (cons 70 0)(assoc 70 lrlist) lrlist)))
)
(initget 7)
(setq start (getint "\nВведите стартовый номер : "))
(if (setq ss (ssget (list (cons 0 "TEXT")(cons 1 "%%U*")(cons 8 lname))))
(progn
(initget 2)
(setq rate (getint "\nВведите шаг (используйте минус для понижения нумерации) <1>: "))
(if (not rate)(setq rate 1))
(command "_.undo" "_begin")
(while
(setq en (ssname ss 0))
(setq elist (entget en))
(setq txt (cdr (assoc 1 elist)))
(setq match (atoi (vl-string-subst "" "%%U" txt)))
(if (>= match start)
(progn
(setq txt (strcat "%%U" (itoa (+ rate (atoi (vl-string-subst "" "%%U" txt))))))
(entmod (subst (cons 1 txt) (assoc 1 elist) elist))
(entupd en)
)
)
(ssdel en ss)
)
)
)
(if (and state lock)
(entmod (subst (cons 70 state)(assoc 70 lrlist) lrlist))
)
(*error* nil)
(princ)
)
(princ "\n == Программа перенумерации текста загружена ==")
(princ "\n = [Только для почеркнутых однострочных тестов] =")
(prompt "\n *** Для выполнения введите REW ***")
(prin1)
Сколько раз подряд выпадали номера КЕНО
для контроля невыпадения номеров в ближайшем тираже
создаём таблицу сами используя
сайт тиражей кено например lotostat.ru/keno/arhiv-keno
видим ближайшие минувшие или любые 40 тиражей подряд
например возможна система вида чётно-нечётные тиражи
выделяем интересующие например 40 тиражей подряд
копируем в память
у меня в excel вставляется без форматирования удобно
и вставляю в A2 и выравниваю столбцы по ширине
вариант вставки: скопировать с сайта и вставить в блокнот
выделить вставленное и скопировать и вставлять в excel
выделяю все тиражи с номерами тиражей
на ленте: сортировка от максимального к минимальному
результат: новейшие тиражи выше
вводим в W1 1 и в X1 2
и выделив обе ячейки расширяем до 80 вправо до CX
и выравниваю столбцы по ширине
w2
=СЧЁТЕСЛИ($B2:$U2;W$1)
расширяем формулу направо до CX и выделенную строку вниз
видим много нулей мешающих
круглая кнопка excel - параметры - дополнительно
почти в конце: показывать нули в ячейках - выключить - ok
cz2
=ЕСЛИ(W2=1;CZ3+1;0)
расширяем до GA2 и вниз выделенную строку
и выравниваю столбцы по ширине
GC2
=ЕСЛИ(CZ2<CZ1;0;CZ2)
расширяем до JD2 и вниз выделенную строку
и выравниваю столбцы по ширине
U46
1
U47
2
расширяем обе вниз до значения 12
V45
=СЧЁТЕСЛИ($GC$2:$JD$41;U45)
W45
=100*ОКРУГЛ(V45/3200;2)
X45
%
V45 & W45 & X45 расширяем вниз
видим результаты типа того:
2598 81 %
1 463 14 %
2 102 3 %
3 27 1 %
4 7 %
5 3 %
6 %
7 %
таблица проверяющая количество
совпадений подряд в 20000 испытаний
A1
=СЛУЧМЕЖДУ(0;1)
и за нижний правый угол ячейки растягиваем вниз до A20000
причём домашнее задание: подсчёт среднего значения
B1
пусто или 0 для суммы далее
B2
=ЕСЛИ(A2=0;0;B1+1)
щёлк-щёлк в нижний правый угол ячейки и растянется вниз до B20000
C1
пусто или 0
C2
=ЕСЛИ(B2=0;B1;0)
щёлк-щёлк в нижний правый угол ячейки и растянется вниз до C20000
или возможно растягивать сразу 2 ячейки или 3 ячейки на 20000 вниз
E1
1
E2
2
выделив обе расширяем вниз до 10
F1
=СЧЁТЕСЛИ($C$2:$C$20000;E1)
G1
=F1/$F$12
H1
=$F$12/F1
I1
=1/(0,5^E1)
из формулы C+р^N=1 даже ежели неочевидно
настроив в столбцах H&I точность 0 цифр после запятой
и расширяем 4 ячейки F1 G1 H1 I1 вместе вниз до 10
F12
=СУММ(F1:F10)
результат: в столбцах H&I
отношение событий к числу совпадений подряд
у-2-ивается для каждого количества совпадений подряд
значит ждать N+1 совпадений подряд в 2 раза дольше N
вывод: случайные результаты предсказуемые
другая часть про Программирование:
Азы Экономики kenokeno.ucoz.ru/load/econom3d/1-1-0-15
BasiC# qbc# C##
сборник сравнений программ на разных языках программирования
rosettacode.org/wiki/Category:C_sharp
rosettacode.org/wiki/Category:QB64
онлайн компилятор C#: ideone.com
квадратное уравнение qb64:
' quadratic equation QB64 DAV
INPUT "INPUT A"; A
INPUT "INPUT B"; B
INPUT "INPUT C"; C
D = B ^ 2 - 4 * A * C
IF D < 0 THEN PRINT "D<0 ": END
PRINT "OTBET: "
PRINT "D ="; D
X1 = (-B + SQR(D)) / (2 * A)
X2 = (-B - SQR(D)) / (2 * A)
PRINT "X1 ="; X1
PRINT "X2 ="; X2
END
квадратное уравнение C# без проверки d<0:
using System; using System.Text; using System.IO;
namespace DAV // quadratic equation C# DAV
{ class Program
{ static void Main(string[] args)
{ Console.Write("INPUT A: ");
long a = Convert.ToInt32(Console.ReadLine());
Console.Write("INPUT B: ");
long b = Convert.ToInt32(Console.ReadLine());
Console.Write("INPUT C: ");
long c = Convert.ToInt32(Console.ReadLine());
long d = (b * b - 4 * a * c);
Console.WriteLine("OTBET: ");
Console.Write("D = ");
Console.WriteLine(d);
var x1 = (-b + Math.Sqrt(d)) / (2 * a);
var x2 = (-b - Math.Sqrt(d)) / (2 * a);
Console.Write("X1 = ");
Console.WriteLine(x1);
Console.Write("X2 = ");
Console.WriteLine(x2);
Console.ReadKey();
}}}
квадратное уравнение excel без проверки d<0: excel A1
6
7
2
=A2^2-4*A1*A3
=(-A2+КОРЕНЬ(A4))/(2*A1)
=(-A2-КОРЕНЬ(A4))/(2*A1)
для проверки применялись параметры
A = 6
B = 7
C = 2
BasiC# qbc# C##
Компилируем C# milliard.cs
копируем текст программы и вставляем в блокнот
и временно сохраняем на рабочий стол с названием
milliard.cs
в блокноте создаём новый текст 2 строчки
name.bat компиляция создаёт окно 20-го века
csc.exe /nologo name.cs
pause
name.bat компиляция создаёт окно 21-го века
csc.exe /target:winexe name.cs
pause
и временно сохраняем на рабочий стол с названием
milliardx.bat
переходим в каталог
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\
где видим csc.exe и переносим 2 файла
milliardx.cs
milliardx.bat
и создаём ярлык каталога на рабочем столе
стартовав milliardx.bat
возникает информ окно и создаётся
малый быстрый независимый исполняемый
milliardx.exe
Онлайн компилятор C# без qbasic без регистрации
сохраняет программы на годы
C# Миллиард угадывает 1 из 1'000'OOO'ooo
за =log(10^9;2) за 30 ходов
using System; // milliardx.cs
namespace DANILIN { class Program
{ static void Main(string[] args)
{ Random rand = new Random();int t=0;
int h2=1234567890; int h1=0; int f=0; int a;
int comp = rand.Next(h2);
int human = rand.Next(h2);
while (f<1)
{ Console.WriteLine();
Console.Write("{0} {1} {2}", t, comp, human);
if(comp < human)
{ Console.Write(" MORE");
a=comp; comp=(comp+h2)/2; h1=a; }
else if(comp > human)
{ Console.Write(" less");
a=comp; comp=(h1+comp)/2; h2=a;}
else {Console.Write(" win by {0} steps", t);f=1;}
t++; }
Console.ReadKey();}}}
rextester.com/DYVZM84267
ideone.com/OCLvkd
Python Milliard rextester.com/GWJFOO4393
import random # milliardp.py
h1 = 0
h2 = 10**16
c = random.randrange(0,h2) #comp
h = random.randrange(0,h2) #human
t = 0
f=0
while f<1:
print(t,c,h)
if h<c:
print('MORE')
a=h
h=int((h+h2)/2)
h1=a
elif h>c:
print('less')
a=h
h=int((h1+h)/2)
h2=a
else:
print('win by', t, 'steps')
f=1
t=t+1
JavaScript JS Milliard rextester.com/PYYQS76244
<!DOCTYPE html>
<title>Milliard JavaScript</title> </head> <body> <noscript>Vkluch JS</noscript>
https://rextester.com/PYYQS76244
<script>
h2=1000000000, h1=0, f=0, t=0, a=0 // Milliard.js
comp = Math.floor(Math.random() * h2)
human = Math.floor(Math.random() * h2)
while (f<1)
{ document.write("<br/>" + t + " " + comp + " " + human)
if(comp < human)
{ document.write(" MORE")
a=comp; comp = Math.floor((comp+h2)/2); h1=a}
else if(comp > human)
{ document.write(" less")
a=comp; comp = Math.floor((h1+comp)/2); h2=a}
else { document.write(" win by " + t + " steps "); f=1}
t++}
</script>
</body> </html>
C++ Milliard rextester.com/QZEGM92902
#include <iostream> // milliardc.cpp
using namespace std;
int main() // rextester.com/QZEGM92902
{ srand(time(NULL));
int h2=1000000000, h1=0, f=0, t=0, a=0;
int comp = rand() % h2;
int human = rand() % h2;
while (f<1)
{ cout<<endl<<t<<" "<<comp<<" "<<human;
if(comp < human)
{ cout << " MORE";
a=comp; comp=(comp+h2)/2; h1=a;}
else if(comp > human)
{ cout << " less";
a=comp; comp=(h1+comp)/2; h2=a;}
else { cout <<" win by "<<t<<" steps "; f=1;}
t++; }system("pause");}
Анимация компиляция Win7 Framework
Программа угадывающая 1 из тысяч на qbasic qb64 milliard
h1=0: h2=10^3: t=1: f=0: Randomize Timer ' milliardb.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
Угадываем число от 0 до 100 считая шаги
' qb64 dav guess number from 0 to 100 with counting of steps
RANDOMIZE TIMER
s = INT(RND * 100)
t = 0
10 PRINT: t = t + 1:
INPUT "your variant"; a
IF a < s THEN PRINT "need MORE": GOTO 10
IF a > s THEN PRINT "need less": GOTO 10
PRINT "win by"; t; "steps"
END
// C# dav guess number from 0 to 100 with counting of steps
using System; using System.Text;
namespace DAV
{ class Program
{ static void Main(string[] args)
{ Random rand = new Random();
int s = rand.Next(100);
int t = 0;
dav:
Console.WriteLine(); t++;
Console.Write("your variant ");
string d = Console.ReadLine();
int a = Convert.ToInt32(d);
if(a > s)
{Console.WriteLine("need less");
goto dav;
}
else if(a < s)
{Console.WriteLine("need MORE");
goto dav;
}
Console.Write("win by "); Console.Write(t); Console.Write(" steps");
Console.ReadKey();
}}}
Программа C# Пифагор и вложенные циклы
строит на экране таблицу умножения
Program C# Pythagoras and nested loops
builds on screen multiplication table
2 3 4 5
5 10 15 20 25
6 12 18 24 30
особенность компилятора C#
программа замечание мол ошибка в начале
может означать нехватку символов } в конце
C# compiler feature noticed
remark that there is a mistake at beginning of program
may mean a lack of characters } at end
using System; using System.Text; // pifagor.cs
namespace DAV { class Program
{ static void Main(string[] args)
{ Console.Write(" 2 3 4 5 6 7 8 9");
for (int i = 5; i <=9; i++)
{ Console.WriteLine();
Console.Write(i);
for (int j = 2; j <=9; j++)
{ Console.Write(" ");
Console.Write(i*j);
}}
Console.ReadKey();
}}}
рисуем 5D рельеф создав случайный массив высот
на QB64 за 5 минут и ещё час
на красоту и на универсальность
' 5д рельеф и массив
SCREEN 12: RANDOMIZE TIMER: DIM a(12,12)
FOR t=1 TO 12 ' количество
FOR x=1 TO 12: FOR y=1 TO 12
a(x,y)=INT(RND*20)'высоты
NEXT: NEXT: CLS
FOR y=1 TO 12: FOR x=1 TO 11
LINE (50+20*x+20*y, 400-20*y-a(x,y))-(50+20*(x+1)+20*y, 400-20*y-a(x+1,y)), y
NEXT: NEXT
FOR x=1 TO 12: FOR y=1 TO 11
LINE (50+20*x+20*y, 400-20*y-a(x,y))-(50+20*(x+1)+20*y, 400-20*(y+1)-a(x,y+1)), x
NEXT: NEXT:SLEEP 1
NEXT
END
на C# использована программа маятник
из-за чего остались непонятные строки про таймер
и от вне/внутри циклов зависит функция случайных
и чтоб понять создана экспресс программа случайных
как очищать экран пока неясно и строит медленно
и неясно как задавать цвет линиям переменными
Диспетчер задач показывает
простая программа или массив заполняет память
и только в конце строка очистки памяти спасает
using System; using System.Drawing; // RELIEF.cs
using System.Windows.Forms;
class dadaRELIEF: Form
{ public static void Main()
{ Application.Run(new dadaRELIEF());
}
public dadaRELIEF()
{ Text = "dadaRELIEF";
BackColor = System.Drawing.Color.Blue;
ForeColor = System.Drawing.Color.Red;
ResizeRedraw = true;
Width = 600;
Height = 360;
}
protected override void OnPaint(PaintEventArgs dan)
{ int[,] a = new int[22, 22];
Random rand = new Random();
for (int k = 1; k < 22; k++) //da:
{ for (int x = 1; x <=12; x++) // массив высот
for (int y = 1; y <=12; y++)
a[x,y]=rand.Next(20);
for (int y = 1; y <=12; y++) // паралл Х красный
for (int x = 1; x <=11; x++)
{ Graphics da = dan.Graphics;
da.DrawLine(new Pen(Color.Red, x/2), new Point(50+20*x+20*y, 300-20*y-a[x,y]), new Point(50+20*(x+1)+20*y, 300-20*y-a[x+1,y]));
}
for (int x = 1; x <=12; x++) // паралл У красный
for (int y = 1; y <=11; y++)
{ Graphics dav = dan.Graphics;
dav.DrawLine(new Pen(Color.Red, y/2), new Point(50+20*x+20*y, 300-20*y-a[x, y]), new Point(50+20*(x+1)+20*y, 300-20*(y+1)-a[x, y+1]));
}
System.Threading.Thread.Sleep(1000);
for (int y = 1; y <=12; y++) // паралл Х синий
for (int x = 1; x <=11; x++)
{ Graphics da = dan.Graphics;
da.DrawLine(new Pen(Color.Blue, x/2), new Point(50+20*x+20*y, 300-20*y-a[x,y]), new Point(50+20*(x+1)+20*y, 300-20*y-a[x+1,y]));
}
for (int x = 1; x <=12; x++) // паралл У синий
for (int y = 1; y <=11; y++)
{ Graphics dav = dan.Graphics;
dav.DrawLine(new Pen(Color.Blue, y/2), new Point(50+20*x+20*y, 300-20*y-a[x, y]), new Point(50+20*(x+1)+20*y, 300-20*(y+1)-a[x, y+1]));
}
Array.Clear(a, 0, 22);
}}}
кроме C# маятник есть C# диагонали проще
и больше ни одна программа C# не включилась
чтобы как в basic: 1 файл = 1 программа
поэтому важна моя данная программа 5D рельеф
рисующая хоть что-то предсказуемо
и одновременно изучаем вложенные циклы
и ещё ищу графические программы компилируемые:
1 файл = 1 программа
1 bas = 1 cs = 1 exe
Программа сразу создана в C# и изучены:
случайные файл запись чтение курсор пауза время
зато каждый: может + должен = обязан
переводить на разные языки программирования
простые программы соблюдающие:
1 bas = 1 exe = 1 cs = 1 exe
// histogram.cs 29.03.19.
// случайные файл запись чтение курсор пауза время
// csc.exe /nologo histogram.cs
using System; using System.Text; using System.IO;
namespace DAV { class Program
{ static void Main(string[] args)
{ var start = DateTime.Now;
Random rand = new Random();
var outFile = new StreamWriter("dav.txt");
for (int i = 1; i <= 64; i++)
{ int a = 3+rand.Next(7);
outFile.WriteLine(a);
}
outFile.Close();
var inpFile = new StreamReader("dav.txt");
Console.Clear();
for (int i = 1; i <= 64; i++)
{ int b = Convert.ToInt32(inpFile.ReadLine());
Console.SetCursorPosition(i+5,5);
Console.Write(b);
for (int j = 1; j <= b; j++)
{ Console.SetCursorPosition(i+5,16-j);
Console.Write("*");
System.Threading.Thread.Sleep(100);
} }
inpFile.Close();
var finish = DateTime.Now;
Console.SetCursorPosition(30,17);
Console.Write(finish-start);
Console.ReadKey();
} } }
* * * * * * * * * * * *
* * * * * *** * * * * * * * * * * * *
** **** **** ***** **** ***** ** **** **** ******** **** *
//c# строковые функции и операции со строками
//c# из цифры строка и из строки цифра и код символа
//c# составление строк и разделение строк и сравнение строк
using System; using System.Text;
namespace DAV { class Program
{ static void Main(string[] args)
{ string s = "";
Random rand = new Random();
for (int i = 1; i <= 64; i++)
{ int a = rand.Next(9);
string dop = (a.ToString());
s=s+dop;
Console.WriteLine(s);
}
int b = 2+rand.Next(8);
Console.WriteLine();
Console.WriteLine("Место ");
Console.WriteLine(b);
if (s[b-1] == s[b])
Console.WriteLine("Знаки Равны ");
else Console.WriteLine("Знаки НЕ равны ");
Console.WriteLine(s[b-1]);
Console.WriteLine(s[b]);
string d1 =(s[b-1].ToString());
string d2 =(s[b].ToString());
string d = d1+d2;
Console.WriteLine("Вместе ");
Console.WriteLine(d);
Console.WriteLine();
System.Threading.Thread.Sleep(5000);
string q = "";
int sum = 0;
int k=3;
for (int i = 0; i <= s.Length-k; i++)
{ string e=(s.Substring(i,k));
Console.WriteLine(e);
string f=(s.Substring(i, 1));
q = q+f;
sum = sum + int.Parse(f);
Console.WriteLine(f);
Console.WriteLine(s);
Console.WriteLine(q);
Console.Write("Сумма цифр ");
Console.WriteLine(sum);
Console.WriteLine();
System.Threading.Thread.Sleep(500);
}
for (int i = 121; i >= 32; i--)
Console.Write(Convert.ToChar(i));
Console.ReadKey();
System.Threading.Thread.Sleep(5000);
}}}
BasiC# qbc# C##
сборник сравнений программ на разных языках программирования
rosettacode.org/wiki/Category:C_sharp
rosettacode.org/wiki/Category:QB64
qb64phoenix.com/forum/forumdisplay.php?fid=7
Онлайн компиляторы
jdoodle.com
onlinegdb.com
rextester.com
ide.geeksforgeeks.org
wandbox.org
ideone.com
techiedelight.com/compiler
boxgm.itch.io/qbjs
другая часть про Программирование:
Азы Экономики kenokeno.ucoz.ru/load/econom3d/1-1-0-15
пишут технологический цикл замкнулся
раньше в бэйсике кнопки сочиняли вручную
потом появились среды визуальные
и сейчас опять кто пишет кнопки сам как я
те экономят время и получают 1 программу
1cs=1exe зато среды создают непонятную кучу файлов
программа рисует кнопку 2+2 и пишет 5
мой стиль: 1-я строчка имя файла 225.cs
using System; using System.Drawing; // 225.cs
using System.Windows.Forms; namespace s225
{ public class Program
{ static void Main()
{ Application.Run(new s225());
} }
class s225 : Form
{ TextBox textBox1; Button button1;
public s225()
{ button1 = new Button(); button1.Text = "2+2";
button1.Location = new System.Drawing.Point(15, 20);
button1.Click+=button1_Click; Controls.Add(button1);
}
private void button1_Click(object sender, EventArgs e)
{ int num1 = 2; int num2 = 2; var sum = num1 + num2 + 1;
textBox1=new TextBox(); textBox1.Text = sum.ToString();
textBox1.Width = 40; textBox1.Location = new System.Drawing.Point(55, 50);
Controls.Add(textBox1);
}}}
плюс нужен 225.bat из 2-х строк для win окон
csc.exe /target:winexe 225.cs
pause
225.exe
получились файлы 225.cs и 225.bat
старт 225.bat компилирует 225.cs и создаёт 225.exe
настроив шаблон учитывающий многие параметры кнопок
и разных элементов легко программировать не с нуля
Возможно используется Вихрь Мерсенна php Mersenne Twister Random Number Generator
ideone.com/7Bo7g4
1 строка
<?php for ($d = 1 ; $d <= 123 ; $d++) { echo mt_rand(11111, 88888); echo " \n";} ?>
Python синтезирует в столбец более 100 случайных 3-значных:
ideone.com/BEtAlJ
import random
x = 1
while x < 123:
da = random.randint(111,888)
print(da)
x += 1
вариант связанной сортировки 3-ёх массивов в C#
ideone.com/Nuzm9W
using System; // Tuple.cs
class Program { static void Main(string[] args)
{ int[] a = { 33, 11, 33, 55 };
int[] b = { 789, 123, 456, 135 };
string[] c = { "ЮЮЮ", "ЯЯЯ", "ЭЭЭ", "ЪЪЪ" };
Tuple<int, int, string>[] arr = new Tuple<int, int, string>[4];
for (int i = 0; i < arr.Length; i++)
arr[i] = new Tuple<int, int, string>(a[i], b[i], c[i]);
arr = (from item in arr
orderby item.Item3
select item).ToArray();
for (int i = 0; i < arr.Length; i++)
Console.Write(arr[i].Item1 + " ");Console.WriteLine();
for (int i = 0; i < arr.Length; i++)
Console.Write(arr[i].Item2 + " ");Console.WriteLine();
for (int i = 0; i < arr.Length; i++)
Console.Write(arr[i].Item3 + " ");Console.WriteLine();
}}
55 33 33 11
135 456 789 123
ЪЪЪ ЭЭЭ ЮЮЮ ЯЯЯ
Недостатки: неизвестно сколько массивов может охватить
и неочевидно как по убыванию именно сортировать
или в конце реверс каждого массива по отдельности
и ещё важно исследовать в C#:
Array.Sort(b, c); //главный массив бэ
Array.Sort((int[])b.Clone(), a); //главный массив бэ
достоверность именно МТ19937 неочевидна
зато набор исследований научит выявлять
синтезированное через МТ19937
полностью размещённые программы работают
и взаимно совместимые алгоритмы понятны школьникам
Массивы более 100 тыщ чисел ГПСЧ
NtRand1.xls NtRand2.xls NtRand3.xls
скачиваются из интернет
ежечасно нужная программа: ничего не делает
программа заменитель: калькулятор стартует ежечасно
для замены обновления браузеров
сколько террабайт сэкономлено неизвестно
Программы и ввод данных развитие этапы
1. данные внутри программы .................... dos \ visual \ smart
2. данные вводит вручную клавиатура ..... dos
3. данные вводит файл извне ................... dos \ visual \ smart
4. данные оформляет диалоговое меню ... dos
5. данные оформляет диалоговое меню ... visual
6. данные оформляет диалоговое меню ... smart
7. данные поставляет интернет ................ dos \ visual \ smart
8. данные распознаётся изображение ...... visual \ smart
9. данные распознаётся голос и звук ....... visual \ smart
Большинство останавливается на п.3
|