Anonymní profil peter – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil peter – Programujte.comAnonymní profil peter – Programujte.com

 

Příspěvky odeslané z IP adresy 2001:718:2601:258:20fb:a6d:1022:30ed...–

peter
Pascal › Součet dvou binárních čísel
5. 11. 2021   #388929

Sak, zkus napsat tvuj program a pridej tm komentare, co to ma delat nebo si myslis, ze ma delat a co ti tam schazi dodelat a s cim si nevis rady. Pokud dokazes popsat, co ma ktera cast programu delat, tak ji obvykle taky dokazes napsat v kodu.
Mne hodne pomahalo promyslet si programy s papirem a tuzkou, kdyz slo o nejake slozite veci. Napsal jsem si tam, co chci mit na vystupu, tipnul nejake zaludne moznosti vstupu. A opravoval do tehdy, nez to vyhovelo vsem testovacim hodnotam. Pak presel k dalsi casti. Nebo na preskacku, odladil jednu cas pro nejake vstupni hodnoty...
 

peter
Pascal › Součet dvou binárních čísel
5. 11. 2021   #388928

Kdyz nevis, kudy kam... Co jsi nasla googlem?
google = pascal binary counting
https://www.tutorialspoint.com/…perators.htm
 

obvykle
x := b + c // scitani
x := b or c // binarni scitani

v := 123;
bit0 := v and 0x01; // nebo mozna pujde v & 1
bit1 := (v>>1) & 0x01;

v & 1 udela to, ze binarne ANDuje bity v, 00001111 and 00000001 = 00000001.
Shifty delaji to, ze rotuji bity doprava nebo doleva,  00001111>>1 = 000000111
if (v & 1 == 1) jestli se posledni bit vpravo ==1
Jestli potrebujes poscitat binarne vsechny bity cisla V, pak potrebujes cislo rotovat shifty a pouzit cyklus pro 8 bitu.

Je samozrejme otazka, zda pracujes s cisly (1, 2, 3... 255) nebo stringem '000000001'. U stringu musis nejakym zpusobem vybrat posledni cislo, prevest jej na cislo a pak jej muzes jako cislo ANDovat. Nebo to zpracujes pres prevadeni, jako string.
Tezko rict, jake mas zadani...

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý