Prethodna tema :: Sljedeća tema |
Autor/ica |
Poruka |
ma Forumaš(ica)
Pridružen/a: 27. 01. 2007. (12:06:50) Postovi: (347)16
Spol:
|
|
[Vrh] |
|
vsego Site Admin
Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3560)16
Spol:
Lokacija: /sbin/init
|
Postano: 20:57 ned, 28. 1. 2007 Naslov: |
|
|
"Broj u nekoj bazi" je stvar zapisa. :prodike: Dakle, [latex](10001)_2[/latex], [latex](17)_{10}[/latex] i [latex](11)_{16}[/latex] su [b]isti broj[/b], samo razlicito zapisan (jednako kao i broj XVII). 8)
Ovdje je rijec o tome da elemente polja gledas u sustavu s bazom [i]b[/i] i onda zbrajas znamenke takvog [u]prikaza[/u] broja. 8) Zbrajas ih, naravno, klasicno. :)
Zadaca nije obavezna i zato je ove godine odluceno da bude teza od kolokvija. 8) Tko misli da je to losa ideja, neka se obrati voditeljima kolegija (i.e. nastavnicima) jer oni odlucuju, a asistenti su samo egzekutivci. ;)
"Broj u nekoj bazi" je stvar zapisa. Dakle, , i su isti broj, samo razlicito zapisan (jednako kao i broj XVII).
Ovdje je rijec o tome da elemente polja gledas u sustavu s bazom b i onda zbrajas znamenke takvog prikaza broja. Zbrajas ih, naravno, klasicno.
Zadaca nije obavezna i zato je ove godine odluceno da bude teza od kolokvija. Tko misli da je to losa ideja, neka se obrati voditeljima kolegija (i.e. nastavnicima) jer oni odlucuju, a asistenti su samo egzekutivci.
_________________ U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
|
|
[Vrh] |
|
Jelaska Forumaš(ica)
Pridružen/a: 13. 10. 2004. (14:27:46) Postovi: (50)16
|
Postano: 21:44 ned, 28. 1. 2007 Naslov: Re: 3. zadatak 3. zadaće |
|
|
[quote="ma"]Treba li u 3. zadatku prvo zbrojiti znamenke pojedinog elementa niza pa ih prebaciti u sustav s bazom b, ili obrnuto? Ako je obrnuto, treba li ih zbrojiti u bazi u kojoj jesu ili u bazi 10?[/quote]
Polje x se sastoji od n prirodnih brojeva. Uzmemo i-ti element polja x, te pronađemo sumu znamenaka njegovog zapisa u sustavu sa bazom b. Ta suma je i-ti element polja y. Dakle, polje y se sastoji od brojeva (u dekadskoj bazi) koji su sume znamenaka odgovarajućih elemenata polja x u bazi b.
[quote="ma"]
Što god bio odgovor, kako to napraviti?
[/quote]
Kategorički odbijam to odgovoriti, obzirom da je cilj zadaće da student samostalno riješi zadaću. Strože gledano, moglo bi se reći da je zabranjeno postavljati takva pitanja na forumu. :bu!:
[quote="ma"]Na žalost računaraca, moram reći da se slažem sa svima koji tvrde da je treća zadaća (malo) previše. :(
[/quote]
Treća zadaća je [b][u]namjerno[/u][/b] dana teža. Zašto?:trekkie:
Jedan od ciljeva zadaća je osposobiti studenta za polaganje ispita--UUR-a. Onaj tko samostalno sa razumijevanjem riješi zadatke svih zadaća je definitivno kandidat za prolaz kolegija, i to ne ocjenom dovoljan(2). U zadaći su dani problemski zadaci, te je njihovo rješavanje ne samo investicija u prolaz UUR-a, nego u najmanje 2 kolegija na sljedbenika UUR-a. Obzirom da [b]predaja zadaće nije obvezna[/b], po dogovoru profesora i asistenata na kolegiju, ova metodologija je prepoznata kao optimalna. :sherlock:
ma (napisa): | Treba li u 3. zadatku prvo zbrojiti znamenke pojedinog elementa niza pa ih prebaciti u sustav s bazom b, ili obrnuto? Ako je obrnuto, treba li ih zbrojiti u bazi u kojoj jesu ili u bazi 10? |
Polje x se sastoji od n prirodnih brojeva. Uzmemo i-ti element polja x, te pronađemo sumu znamenaka njegovog zapisa u sustavu sa bazom b. Ta suma je i-ti element polja y. Dakle, polje y se sastoji od brojeva (u dekadskoj bazi) koji su sume znamenaka odgovarajućih elemenata polja x u bazi b.
ma (napisa): |
Što god bio odgovor, kako to napraviti?
|
Kategorički odbijam to odgovoriti, obzirom da je cilj zadaće da student samostalno riješi zadaću. Strože gledano, moglo bi se reći da je zabranjeno postavljati takva pitanja na forumu.
ma (napisa): | Na žalost računaraca, moram reći da se slažem sa svima koji tvrde da je treća zadaća (malo) previše.
|
Treća zadaća je namjerno dana teža. Zašto?
Jedan od ciljeva zadaća je osposobiti studenta za polaganje ispita–UUR-a. Onaj tko samostalno sa razumijevanjem riješi zadatke svih zadaća je definitivno kandidat za prolaz kolegija, i to ne ocjenom dovoljan(2). U zadaći su dani problemski zadaci, te je njihovo rješavanje ne samo investicija u prolaz UUR-a, nego u najmanje 2 kolegija na sljedbenika UUR-a. Obzirom da predaja zadaće nije obvezna, po dogovoru profesora i asistenata na kolegiju, ova metodologija je prepoznata kao optimalna.
_________________ Jelaska Igor
|
|
[Vrh] |
|
Miha Keber Forumaš(ica)
Pridružen/a: 18. 10. 2006. (20:16:56) Postovi: (26)16
Spol:
|
|
[Vrh] |
|
mdoko Forumaš(ica)
Pridružen/a: 30. 11. 2002. (22:17:12) Postovi: (71A)16
Spol:
Lokacija: Heriot-Watt University, Edinburgh
|
|
[Vrh] |
|
mfernezir Forumaš(ica)
Pridružen/a: 21. 11. 2005. (18:26:41) Postovi: (27)16
Spol:
|
|
[Vrh] |
|
vsego Site Admin
Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3560)16
Spol:
Lokacija: /sbin/init
|
Postano: 3:35 pet, 23. 2. 2007 Naslov: |
|
|
Nije nesto posebno tesko, ali ovdje se racuna u cjelobrojnoj aritmetici. 8) Mislim da je to negdje vec napisano... :?
Anyway, ako imas pitanja, mozes danas Igora uloviti na zalbama, pa ga propitati uzivo. :D
Nije nesto posebno tesko, ali ovdje se racuna u cjelobrojnoj aritmetici. Mislim da je to negdje vec napisano...
Anyway, ako imas pitanja, mozes danas Igora uloviti na zalbama, pa ga propitati uzivo.
_________________ U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
|
|
[Vrh] |
|
mfernezir Forumaš(ica)
Pridružen/a: 21. 11. 2005. (18:26:41) Postovi: (27)16
Spol:
|
Postano: 22:26 pet, 23. 2. 2007 Naslov: |
|
|
Okay, u cjelobrojnoj aritmetici nije problem. Ne znam gdje to pise da se radi tako, ali nema veze.
Medjutim, prikaz decimalnih brojeva u drugim bazama me zaintrigirao, ne znam to kodirati.
(3.5)[size=7]10[/size] sam prikazao u bazi 7 ovako:
(35)[size=7]10[/size] = (50)[size=7]7[/size]
Sad podijelim s (10)[size=7]10[/size] = (13)[size=7]7[/size]
(50)[size=7]10[/size] : (13)[size=7]7[/size] = (3.33333....)[size=7]7[/size]
(3.5)[size=7]10[/size]=(3.33333....)[size=7]7[/size]
Problem mi se svodi na kodiranje dijeljenja u bazi 7. Vjerujem da se to moze pametnije napraviti. Moze help u vezi ovog, ili bolje da dodjem na neke konzultacije? :)
Okay, u cjelobrojnoj aritmetici nije problem. Ne znam gdje to pise da se radi tako, ali nema veze.
Medjutim, prikaz decimalnih brojeva u drugim bazama me zaintrigirao, ne znam to kodirati.
(3.5)10 sam prikazao u bazi 7 ovako:
(35)10 = (50)7
Sad podijelim s (10)10 = (13)7
(50)10 : (13)7 = (3.33333....)7
(3.5)10=(3.33333....)7
Problem mi se svodi na kodiranje dijeljenja u bazi 7. Vjerujem da se to moze pametnije napraviti. Moze help u vezi ovog, ili bolje da dodjem na neke konzultacije?
_________________ "If the facts don't fit the theory, change the facts."
|
|
[Vrh] |
|
mdoko Forumaš(ica)
Pridružen/a: 30. 11. 2002. (22:17:12) Postovi: (71A)16
Spol:
Lokacija: Heriot-Watt University, Edinburgh
|
Postano: 23:43 pet, 23. 2. 2007 Naslov: |
|
|
[quote="mfernezir"]
Medjutim, prikaz decimalnih brojeva u drugim bazama me zaintrigirao, ne znam to kodirati.[/quote]
[latex]\displaystyle{(x_n x_{n-1} \ldots x_1 x_0 . x_{-1} x_{-2} \ldots x_{-m})_b := \sum\limits_{-m}^{n} x_i b^i}[/latex]
Pri cemu mora biti:
[latex]b \in \mathbb{N}, b>1[/latex],
[latex]m, n \in \mathbb{N} \cup \{0\}[/latex] i
[latex]x_i \in \{0, 1, \ldots, b-1\}[/latex] za sve [latex]i \in \{-m, -m +1, \ldots , n-1, n\}[/latex].
mfernezir (napisa): |
Medjutim, prikaz decimalnih brojeva u drugim bazama me zaintrigirao, ne znam to kodirati. |
Pri cemu mora biti:
,
i
za sve .
_________________ Extraordinary claims require extraordinary evidence. – Carl Sagan
|
|
[Vrh] |
|
vsego Site Admin
Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3560)16
Spol:
Lokacija: /sbin/init
|
|
[Vrh] |
|
mfernezir Forumaš(ica)
Pridružen/a: 21. 11. 2005. (18:26:41) Postovi: (27)16
Spol:
|
Postano: 20:14 sub, 24. 2. 2007 Naslov: |
|
|
Hvala na odgovorima!
@mdoko: znam ovaj raspis, mada se nisam sjetio ovako zgodno indeksirati decimalni dio. Zanimalo me kako efektivno prikazati decimalan broj u bazi 10 u nekoj drugoj bazi, tj. algoritam koji je dao vsego.
@vsego: jasno mi je zasto je ovo dobro, vec iskodirano. :) Radi dobro za baze do 10, neda mi se pisati za slova. Posto dec. dio odmah moze poceti s nulom, jednostavnije mi je bilo napisati prikaz fiksne duljine (10 dec. znamenki). Koristio sam floor za odjeljivanje cijelog dijela. Eto, vjezba se. :wink:
Hvala na odgovorima!
@mdoko: znam ovaj raspis, mada se nisam sjetio ovako zgodno indeksirati decimalni dio. Zanimalo me kako efektivno prikazati decimalan broj u bazi 10 u nekoj drugoj bazi, tj. algoritam koji je dao vsego.
@vsego: jasno mi je zasto je ovo dobro, vec iskodirano. Radi dobro za baze do 10, neda mi se pisati za slova. Posto dec. dio odmah moze poceti s nulom, jednostavnije mi je bilo napisati prikaz fiksne duljine (10 dec. znamenki). Koristio sam floor za odjeljivanje cijelog dijela. Eto, vjezba se.
_________________ "If the facts don't fit the theory, change the facts."
|
|
[Vrh] |
|
vsego Site Admin
Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3560)16
Spol:
Lokacija: /sbin/init
|
Postano: 20:18 sub, 24. 2. 2007 Naslov: |
|
|
[quote="mfernezir"]Radi dobro za baze do 10, neda mi se pisati za slova.[/quote]
Prebacivanje brojeva 10, 11, 12,... u slova 'A', 'B', 'C',... radis ovako ([tt]x[/tt] je broj, [tt]c[/tt] je slovo):
[tt]c = x + 'A' - 10;[/tt]
Ostavljam tebi proucavanje sto se tu dogadja i zasto to radi. :xg: Vrisni ako nije jasno. ;)
mfernezir (napisa): | Radi dobro za baze do 10, neda mi se pisati za slova. |
Prebacivanje brojeva 10, 11, 12,... u slova 'A', 'B', 'C',... radis ovako (x je broj, c je slovo):
c = x + 'A' - 10;
Ostavljam tebi proucavanje sto se tu dogadja i zasto to radi. Vrisni ako nije jasno.
_________________ U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
|
|
[Vrh] |
|
mfernezir Forumaš(ica)
Pridružen/a: 21. 11. 2005. (18:26:41) Postovi: (27)16
Spol:
|
|
[Vrh] |
|
mfernezir Forumaš(ica)
Pridružen/a: 21. 11. 2005. (18:26:41) Postovi: (27)16
Spol:
|
Postano: 16:28 ned, 25. 2. 2007 Naslov: |
|
|
[quote="vsego"] Prebacivanje brojeva 10, 11, 12,... u slova 'A', 'B', 'C',... radis ovako (x je broj, c je slovo):
c = x + 'A' - 10; [/quote]
Jedino sto je u mom programcicu x = 10.0, 11.0 itd. pa to ne radi. Sve radim s realnim brojevima. Osim toga, floor nije sretno jer npr. za x = 3.8
x - floor(x) == 0.799999.... Trebao sam posebno ucitati cjelobrojni dio i posebno decimalni kao intove i gotovo. :roll:
vsego (napisa): | Prebacivanje brojeva 10, 11, 12,... u slova 'A', 'B', 'C',... radis ovako (x je broj, c je slovo):
c = x + 'A' - 10; |
Jedino sto je u mom programcicu x = 10.0, 11.0 itd. pa to ne radi. Sve radim s realnim brojevima. Osim toga, floor nije sretno jer npr. za x = 3.8
x - floor(x) == 0.799999.... Trebao sam posebno ucitati cjelobrojni dio i posebno decimalni kao intove i gotovo.
_________________ "If the facts don't fit the theory, change the facts."
|
|
[Vrh] |
|
vsego Site Admin
Pridružen/a: 06. 10. 2002. (22:07:09) Postovi: (3560)16
Spol:
Lokacija: /sbin/init
|
Postano: 19:35 ned, 25. 2. 2007 Naslov: |
|
|
Nisam bas siguran da mi je jasno sto ce ti [tt]x - floor(x)[/tt], ali nekako mi se cini da zaboravljas cast-operator:
[code:1][vsego@petko tmp]$ cat t.c; gcc -lm t.c && ./a.out
#include <stdio.h>
#include <math.h>
int main(void) {
double x = 3.8;
printf("x: %g, x - floor(x): %g, (int)x: %d\n", x, x - floor(x), (int)x);
}
x: 3.8, x - floor(x): 0.8, (int)x: 3[/code:1]
Primijeti (prema formatu u [tt]printf()[/tt]) koji je tip koji vraca izraz [tt](int)x[/tt]. ;)
Nisam bas siguran da mi je jasno sto ce ti x - floor(x), ali nekako mi se cini da zaboravljas cast-operator:
Kod: | [vsego@petko tmp]$ cat t.c; gcc -lm t.c && ./a.out
#include <stdio.h>
#include <math.h>
int main(void) {
double x = 3.8;
printf("x: %g, x - floor(x): %g, (int)x: %d\n", x, x - floor(x), (int)x);
}
x: 3.8, x - floor(x): 0.8, (int)x: 3 |
Primijeti (prema formatu u printf()) koji je tip koji vraca izraz (int)x.
_________________ U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
|
|
[Vrh] |
|
mfernezir Forumaš(ica)
Pridružen/a: 21. 11. 2005. (18:26:41) Postovi: (27)16
Spol:
|
Postano: 3:26 pon, 26. 2. 2007 Naslov: |
|
|
Hvala opet! :)
Nisam znao za cast operator, korisna stvar.
Sto se x - floor(x) tice, to je sluzilo za odvajanje decimalnog dijela.
[quote="vsego"] Nakon sto prebacis cjelobrojni dio, ostane ti neki x izmedju 0 i 1. Zatim imas petlju u kojoj
1. pomnozis x sa b
2. uzmes cjelobrojni dio kao znamenku
Ponavljas dok ne dobijes nulu ili dok ti ne dosadi. [/quote]
Dakle, kad uzmem cjelobrojni dio, decimalni dio ponovo mnozim s b, to je ovaj x - floor(x). Pri cemu algoritam ne staje nuzno kad dobijem nulu, moze biti jos drugih znamenaka poslije nule, a mogu i nule biti vodece.
Nego sto je problem kod ovoga, kad unesem x = 3.8, x - floor(x) nije 0.8. Kad raspisem na 20 decimala, ispise 0.7999999....
Uglavnom, nepoznavajuci cast napisao sam program tako da ucita zasebno cijeli dio i decimalni dio kao string (zbog eventualnih vodecih nula kod decimala). Dalje se to onda pretvori u int i sve racuna u cjelobrojnoj aritmetici.
Sad mogu racunati divote poput (34.001)[size=7]10[/size] =(22.004189374B)[size=7]16[/size] Zgodno. :lol:
Hvala opet!
Nisam znao za cast operator, korisna stvar.
Sto se x - floor(x) tice, to je sluzilo za odvajanje decimalnog dijela.
vsego (napisa): | Nakon sto prebacis cjelobrojni dio, ostane ti neki x izmedju 0 i 1. Zatim imas petlju u kojoj
1. pomnozis x sa b
2. uzmes cjelobrojni dio kao znamenku
Ponavljas dok ne dobijes nulu ili dok ti ne dosadi. |
Dakle, kad uzmem cjelobrojni dio, decimalni dio ponovo mnozim s b, to je ovaj x - floor(x). Pri cemu algoritam ne staje nuzno kad dobijem nulu, moze biti jos drugih znamenaka poslije nule, a mogu i nule biti vodece.
Nego sto je problem kod ovoga, kad unesem x = 3.8, x - floor(x) nije 0.8. Kad raspisem na 20 decimala, ispise 0.7999999....
Uglavnom, nepoznavajuci cast napisao sam program tako da ucita zasebno cijeli dio i decimalni dio kao string (zbog eventualnih vodecih nula kod decimala). Dalje se to onda pretvori u int i sve racuna u cjelobrojnoj aritmetici.
Sad mogu racunati divote poput (34.001)10 =(22.004189374B)16 Zgodno.
_________________ "If the facts don't fit the theory, change the facts."
|
|
[Vrh] |
|
|