pura moca
Starosedelac
- Poruka
- 162.038
skriptica je zakon : D
Donji video prikazuje kako da instalirate aplikaciju na početni ekran svog uređaja.
Napomena: This feature may not be available in some browsers.
Баш ми је драго што цениш мој вишечасовни труд да решим задатак.skriptica je zakon : D
aj napravi kod za CБаш ми је драго што цениш мој вишечасовни труд да решим задатак.
Не знам цееееее. Много ми је то тежак језик. Радио сам давно током школовања. Не сећам се ничега, буквално.aj napravi kod za C
Evo još jedan način za računanje.Uzeću primer koji ste Vi dali.hehe jednostavno je, recimo princip obrnute piramide, gde ti je gornji deo svaki broj kvadriran i napisan u tom obliku i onda ides od desno na levo i svaki broj pomozis sa brojem ispred i x 2. i onda pises isto tako samo ispod, zxnaci ne popunaav red vec pises ispod.
Sada cu ti "nacrtati"
Ovaj pajton je katastrofa.Написах Пајтон скрипту за рачунање по принципу који сам описао у првом посту. Скрипта није савршена али бар ради:
Python:def get_paired_lists(a, b): list_a = [] list_b = [] pairs = [] initial = 1 while initial * 2 < a: list_a.append(initial) initial *= 2 if initial * 2 > a: list_a.append(initial) counter = 0 initial2 = b while counter < len(list_a): list_b.append(initial2) initial2 *= 2 counter += 1 pairs.append(list_a) pairs.append(list_b) return pairs def final_calculation(paired_list, a): first_list = paired_list[0] second_list = paired_list[1] solution_list = [] solution = 0 result = a temp = a counter = len(first_list) while counter > 0: temp -= first_list[counter - 1] if temp < 0: temp += first_list[counter-1] elif result == 0: break else: result -= first_list[counter-1] solution_list.append(second_list[counter-1]) counter -= 1 for num in solution_list: solution += num return solution x = 74991 y = 57614 value = get_paired_lists(x, y) print(final_calculation(value, x))
Pogledajte prilog 1097430
Ниси ти видео це или јаву. Ово је рај.Evo još jedan način za računanje.Uzeću primer koji ste Vi dali.
85*45=(8*4+(8+4)/2)*100+25=(32+6)*100+25=3825.
Skontao sam i ovo za kvadriranje,hvala na objašnjenju.
Ovaj pajton je katastrofa.
samo sto sam ja pokusao drugacije da objasnim, to je isto za ono sa gde imamo jedan neparanEvo još jedan način za računanje.Uzeću primer koji ste Vi dali.
85*45=(8*4+(8+4)/2)*100+25=(32+6)*100+25=3825.
Skontao sam i ovo za kvadriranje,hvala na objašnjenju.
Hehe pa da to je u sustini to, jel broj parnih brojeva dobijas x/2![]()
Ne treba da pravi kod u C.aj napravi kod za C
У школи нас уче да бројеве делимо и множимо уз помоћ таблица и разних поступака, а заснивају се на памћењу. Древни Египћани, као и Кинези, схватили су да се сваки број може приказати на један сасвим другачији начин. Иначе, овај принцип користе данашњи компјутери када деле и множе бројеве.
Примера ради, сваки број може бити приказан као сума вредности степеноване бројем два. Како то изгледа у пракси:
Узмимо за пример број 17. Како га представити?
17
------
1
2
4
8
16
Дакле, степенујемо број од 1 на даље квадратом датог броја тако да дођемо до одређене вредности. Запамтите, не можете два пута узимати исти број, већ само једном. У примеру изнад, број седамнаест састоји се од бројева 1 и 16.
Ок, када смо то разумели, хајде да помножимо два броја. Узмимо за пример 17*25:
17 x 25
-------------
1 ---- 25
2 50
4 100
8 200
16 ----400
Са леве стране имамо број 17 који се изражава као 1 и 16. Сваки број који је насупрот њима можете заокружити и доћи до закључка да је решење овог задатка 400 + 25, односно 425. Врло просто, зар не?
Хајде један пример дељења.
1075 / 25
--------------------
1 ----- 25
2 ----- 50
4 100
8 ----- 200
16 400
32 ----- 800
У овом случају је обрнуто. Сада гледамо број са леве стране, али га претстављамо користећи бројеве на десној страни. Када то учинимо, погледаћемо бројеве са леве стране и само их сабрати.
Дакле, то су бројеви 32, 8, 2 и 1. Сабирањем добијамо 43.
Врло лако, зар не? Следећи пут када треба да помножите или поделите бројеве, без таблице можете се користити овом техником.
initial = 1
while initial * 2 < a:
list_a.append(initial)
initial *= 2
if initial * 2 > a:
list_a.append(initial)
initial = 1
list_a.append(1)
while initial * 2 < a:
initial *= 2
list_a.append(initial)
Сам сам рекао да скрипта није нешто али ради. Фокус ми је био да реши проблем. Данас ћу проверити код и обрадити га.Ako sam dobro shvatio prvi umnozak binarizujes, a onda koristis binarne faktore da mnozis drugi umnozak koje kasnije sabiras.
Da ti pomognem malo:
Ja bih voleo ovo da bude jasnije, je me zbunilo sta radi kasnija provera a onda sam shvatio da je granicni uslov. Umesto:
Python:initial = 1 while initial * 2 < a: list_a.append(initial) initial *= 2 if initial * 2 > a: list_a.append(initial)
predlazem malo kraci i pregledniji kod, a dobijes istu listu binarnih faktora.
ovo ti pisem vise zbog nacina razmisljanja, a ne zbog neke kritike da ti kod nije korektan.
Python:initial = 1 list_a.append(1) while initial * 2 < a: initial *= 2 list_a.append(initial)
pogledacu jos tvog koda, sad sam malo umoran.
На око мислим да ниси добро урадио. Неће ти се уписати последњи број. Проверићу касније. Први пут сам број 1 убацио као и ти али сам после хтео то у петљи.Ako sam dobro shvatio prvi umnozak binarizujes, a onda koristis binarne faktore da mnozis drugi umnozak koje kasnije sabiras.
Da ti pomognem malo:
Ja bih voleo ovo da bude jasnije, je me zbunilo sta radi kasnija provera a onda sam shvatio da je granicni uslov. Umesto:
Python:initial = 1 while initial * 2 < a: list_a.append(initial) initial *= 2 if initial * 2 > a: list_a.append(initial)
predlazem malo kraci i pregledniji kod, a dobijes istu listu binarnih faktora.
ovo ti pisem vise zbog nacina razmisljanja, a ne zbog neke kritike da ti kod nije korektan.
Python:initial = 1 list_a.append(1) while initial * 2 < a: initial *= 2 list_a.append(initial)
pogledacu jos tvog koda, sad sam malo umoran.
Сам сам рекао да скрипта није нешто али ради. Фокус ми је био да реши проблем. Данас ћу проверити код и обрадити га.
На око мислим да ниси добро урадио. Неће ти се уписати последњи број. Проверићу касније. Први пут сам број 1 убацио као и ти али сам после хтео то у петљи.
Не смета ми коментарисање кода. Слободно ти чини. Рогобатан је код. Пајтон је страва програмски језик. Скоро се зезао и правио интерфејс преко ткинтера за складиштење корисника у текст фајл.proveri
'Сам сам рекао да скрипта није нешто али ради. Фокус ми је био да реши проблем.'
jasno, neka rana radna verzija tipa 'propotipa'.
Python je dusu dao za dizajniranje.
Stekao sam utisak da zelis da ti neko iskomentarise kod. A i hteo sam i da shvatiim iz koda da li ima nesto drugo u algoritmu. Pogresno sam stekao utisak.
Samo jos nesto da napomenem, pa cu da se sklonim. Za ovakve situacije mislim da bi ti dobro dosao jupyter notebook.
tolicno, pozdrav
Овај метод је занимљив,али је незгодан када множиш две цифре чији је производ већи од 50,односно када је број који треба да се упише троцифрен.postoji i onaj metod kod kvadriranja brojeva
Pogledajte prilog 1097366
tamo u 771 treba da je na kvadrat![]()
Немам превише искуства,али ми ово уопште не делује једноставно.Знам само C#.Ниси ти видео це или јаву. Ово је рај.
Даћу себи слободу да претпоставим како немаш искуства са програмирањем. Да имаш, сложио би се да је лако.
Немам превише искуства,али ми ово уопште не делује једноставно.Знам само C#.![]()
Сада ћу баш да погледам овај код што сам писао да видим може ли се шта средити.moze taj kod da se pojednostavi na vise mesta da bude pregledniji
u C nema lakog ili ugradjenog metoda za dinamicne liste, s obzirom da kod od Anonimnog koristi liste, C kod bi bio duzi, teze citljiv i pun pointera, memorijske alokacije itd da bi mogla ista tehnika da se koristi (doduse sa nekim granicnim uslovima moglo bi i sa fiksnim nizovima), doduse mozda bi mogla da se koristi neka gotova biblioteka tipa GObject (barem na unix/linuxu)
U C++ bi mu bilo malo lakse, jer C++ ima poneku biblioteku viseg nivoa
U takozvanim okljastarenim C++ derivatima, kao sto su Java i C# koji se medjusobno zapravo malo vrlo malo razlikuju bi verovatno bilo nesto slicno kao u C++ koristila bi se neka vrsta List objekata, kod bi bio dovoljno razumljiv.
Jedini visak bi bilo raspisivanje pocetnih objekata pa bi morao da nam da svasta nesto jos uz kod da bi mogli da probamo kod. A i posle svake neke eksperimentalne promene isao bi korak kompilacije.... malo dosadno za danasnje doba. Generalno gledano ako bi anonimni to pisao da se algoritam koristi u nekom sistemu verovatno bi ga relativno lako prepisao u Javu ili C# a bilo bi mu verovatno mnogo lakse da iz pitona skoci na Go.
Ovako, posalje se 1 skript koji stavis u faj i izvrsis + sve se radi na visokom nivou algoritma i bez ostalog sistemskih i jezickih zavrzlama.
Sto bi programeri rekli, python je najmanje ceremonijalan.
def get_paired_lists(a, b):
list_a = []
list_b = []
pairs = []
initial = 1
list_a.append(initial)
while initial * 2 < a:
initial *= 2
list_a.append(initial)
counter = 0
initial2 = b
while counter < len(list_a):
list_b.append(initial2)
initial2 *= 2
counter += 1
pairs.append(list_a)
pairs.append(list_b)
return pairs
def final_calculation(paired_list, a):
first_list = paired_list[0]
second_list = paired_list[1]
solution = 0
result = a
temp = a
counter = len(first_list)
while counter > 0:
temp -= first_list[counter - 1]
if temp < 0:
temp += first_list[counter-1]
elif result == 0:
break
else:
result -= first_list[counter-1]
solution += second_list[counter-1]
counter -= 1
return solution
x = 74991
y = 57614
value = get_paired_lists(x, y)
solution = final_calculation(value, x)
print(solution)