Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

praktični kolokvij
WWW:
Idite na Prethodno  1, 2, 3, 4, 5 ... 17, 18, 19  Sljedeće
Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
BlameGame
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 14. 09. 2011. (19:17:53)
Postovi: (6C)16
Sarma = la pohva - posuda
= 4 - 3

PostPostano: 1:22 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

Da li moze pomoc sa prvim zadatkom u vjezbama sa petljom(8.1.1.)?

Sto bi se tocno trebalo dogoditi sa potencijom jer ja upisem 5 i program mi izbaci redom:
1
2
4
??? :/

Probala sam poseban program samo sa p *= 2 i ponasa se kao mnozenje s 2 a ne potenciranje??
Da li moze pomoc sa prvim zadatkom u vjezbama sa petljom(8.1.1.)?

Sto bi se tocno trebalo dogoditi sa potencijom jer ja upisem 5 i program mi izbaci redom:
1
2
4
??? Ehm?

Probala sam poseban program samo sa p *= 2 i ponasa se kao mnozenje s 2 a ne potenciranje??


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3560)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 3:10 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

Sto ti tocno nije jasno?
[tex]2^0 = 1[/tex],
[tex]2^1 = 2[/tex],
[tex]2^2 = 4[/tex].
Dakle, ispisuje potencije broja 2.

Takodjer, [tt]p *= 2[/tt] je isto sto i [tt]p = p * 2[/tt], sto je lijepo objasnjeno na predavanjima.
Sto ti tocno nije jasno?
[tex]2^0 = 1[/tex],
[tex]2^1 = 2[/tex],
[tex]2^2 = 4[/tex].
Dakle, ispisuje potencije broja 2.

Takodjer, p *= 2 je isto sto i p = p * 2, sto je lijepo objasnjeno na predavanjima.



_________________
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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
angelika
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 08. 02. 2011. (17:26:51)
Postovi: (5F)16
Sarma = la pohva - posuda
= 3 - 1

PostPostano: 9:40 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

pitanje vezano u 17.zadatak:

zadatak kaže da trebam učitati duble broj i onda zamijeniti decimalni dio sa cijelim, npr 75.125 -> 125.75.
Ako učitam broj 75.1250, jel bi program trebao ispisati 1250.75 ili ignorirati zadnju nulu (koja i tak sama po sebi ne mijenja vrijednost broja) i napisati125.75?
pitanje vezano u 17.zadatak:

zadatak kaže da trebam učitati duble broj i onda zamijeniti decimalni dio sa cijelim, npr 75.125 -> 125.75.
Ako učitam broj 75.1250, jel bi program trebao ispisati 1250.75 ili ignorirati zadnju nulu (koja i tak sama po sebi ne mijenja vrijednost broja) i napisati125.75?


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3560)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 9:51 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

Bez obzira je l' pise 75.1250 ili 75.125, to je isti broj -- 75.125, dakle treba ga tako tretirati. Kao i uvijek, naglasavam: razlikujte broj i zapis broja.

Krace: "ignorirate" zadnju nulu.
Bez obzira je l' pise 75.1250 ili 75.125, to je isti broj -- 75.125, dakle treba ga tako tretirati. Kao i uvijek, naglasavam: razlikujte broj i zapis broja.

Krace: "ignorirate" zadnju nulu.



_________________
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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
angelika
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 08. 02. 2011. (17:26:51)
Postovi: (5F)16
Sarma = la pohva - posuda
= 3 - 1

PostPostano: 10:07 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

aha....hvala :)
aha....hvala Smile


[Vrh]
Korisnički profil Pošaljite privatnu poruku
malalodacha
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 11. 10. 2011. (17:06:13)
Postovi: (79)16
Sarma = la pohva - posuda
-24 = 9 - 33

PostPostano: 19:13 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

int a=0,b=0,m,n,i=2,j=2;
printf("unesite 2 broja: ");
scanf("%d %d", &m,&n);
if(m<n)
{
for(m;m<n;m++)
{
for(i;i<m;i++)
{
if(m%i==0)
a=a+i;
}
for(j;j<a;j++)
{
if(a%j==0)
b=b+j;
}
if(b==m)
printf("%d %d",a,b);
}
}
return 0;
}


može li mi netko objasniti što tu ne valja, radi se o zadatku s prijateljskim brojevima?? 4. zadatak je to, ja mislim
int a=0,b=0,m,n,i=2,j=2;
printf("unesite 2 broja: ");
scanf("%d %d", &m,&n);
if(m<n)
{
for(m;m<n;m++)
{
for(i;i<m;i++)
{
if(m%i==0)
a=a+i;
}
for(j;j<a;j++)
{
if(a%j==0)
b=b+j;
}
if(b==m)
printf("%d %d",a,b);
}
}
return 0;
}


može li mi netko objasniti što tu ne valja, radi se o zadatku s prijateljskim brojevima?? 4. zadatak je to, ja mislim


[Vrh]
Korisnički profil Pošaljite privatnu poruku
logikaus
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 12. 10. 2011. (17:55:23)
Postovi: (45)16
Sarma = la pohva - posuda
= 6 - 0

PostPostano: 19:43 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

smijemo li se na prakticnom koristiti s <math.h>, jer su meni osobno laksi zadaci, kada se rjesavaju s pow(x,y)?
i kako je inace u kolokvijima sta se tice <math.h>?
hvala =)
smijemo li se na prakticnom koristiti s <math.h>, jer su meni osobno laksi zadaci, kada se rjesavaju s pow(x,y)?
i kako je inace u kolokvijima sta se tice <math.h>?
hvala =)


[Vrh]
Korisnički profil Pošaljite privatnu poruku
boksi
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 02. 09. 2011. (16:37:55)
Postovi: (44)16
Spol: žensko
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 20:52 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

smije se koristiti math.h ako nije naglašeno suprotno, a vjerojatnost je vrlo velika da će na kolokviju biti naglašeno suprotno.
mislim, nema math.h na kolokviju.
smije se koristiti math.h ako nije naglašeno suprotno, a vjerojatnost je vrlo velika da će na kolokviju biti naglašeno suprotno.
mislim, nema math.h na kolokviju.


[Vrh]
Korisnički profil Pošaljite privatnu poruku
lost_soul
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 18. 10. 2009. (17:38:41)
Postovi: (133)16
Sarma = la pohva - posuda
= 15 - 6

PostPostano: 21:13 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

na praktičnom nema ograničenja, možeš koristiti math.h, a za drugi kolokvij preporučam da pogledaš stare kolokvije i vidiš da li je pisalo nešto vezano uz to ili ne.. ako se i ne smije koristiti znači da nema neke potrebe za tim i da nije preteško riješiti i bez math.h
na praktičnom nema ograničenja, možeš koristiti math.h, a za drugi kolokvij preporučam da pogledaš stare kolokvije i vidiš da li je pisalo nešto vezano uz to ili ne.. ako se i ne smije koristiti znači da nema neke potrebe za tim i da nije preteško riješiti i bez math.h


[Vrh]
Korisnički profil Pošaljite privatnu poruku
wrathchild
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 09. 07. 2010. (21:25:00)
Postovi: (31)16
Sarma = la pohva - posuda
= 11 - 8

PostPostano: 21:14 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

Ne zelin otvarati novu temu pa bi samo tija pitati tu.
U zadatku 8.1.2. iz skripte, jel bi bilo isto da je umisto p++ pisalo ++p ? Ako san dobro skužija p++ i ++p se razlikuju samo ako ocemo printf p nakon inkrementa?

hvala
Ne zelin otvarati novu temu pa bi samo tija pitati tu.
U zadatku 8.1.2. iz skripte, jel bi bilo isto da je umisto p++ pisalo ++p ? Ako san dobro skužija p++ i ++p se razlikuju samo ako ocemo printf p nakon inkrementa?

hvala


[Vrh]
Korisnički profil Pošaljite privatnu poruku
gflegar
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 12. 10. 2011. (15:03:41)
Postovi: (10D)16
Spol: muško
Sarma = la pohva - posuda
68 = 72 - 4

PostPostano: 22:11 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

U ovom zadatku bi bilo isto, ali [tt]p++[/tt] i [tt]++p[/tt] se ne razlikuju samo kod printf-a, razlika je u tome sto [tt]p++[/tt] prvo vrati vrijednost od [tt]p[/tt] pa ga tek onda poveca za 1, a [tt]++p[/tt] prvo poveca p za 1 pa onda vrati vrijednost, npr.
[code:1]
int m, p = 0;
m= p++; //prvo se vrati vrijednost od p, sto je 0, pa je sada m = 0, a tada se poveca p za 1, pa j p = 1
m+= ++p //prvo se poveca vrijednost od p za 1, pa je sada p = 2, a onda se vrati vrijednost od p, tj. m se poveca za 2, pa je m = 2
printf("%d %d\n", m, ++p);
printf("%d\n", p++);
printf("%d\n", p);
[/code:1]

ispis:
[code:1]2 3
3
4
[/code:1]
U ovom zadatku bi bilo isto, ali p++ i ++p se ne razlikuju samo kod printf-a, razlika je u tome sto p++ prvo vrati vrijednost od p pa ga tek onda poveca za 1, a ++p prvo poveca p za 1 pa onda vrati vrijednost, npr.
Kod:

int m, p = 0;
m= p++;           //prvo se vrati vrijednost od p, sto je 0, pa je sada m = 0, a tada se poveca p za 1, pa j p = 1
m+= ++p         //prvo se poveca vrijednost od p za 1, pa je sada p = 2, a onda se vrati vrijednost od p, tj. m se poveca za 2, pa je m = 2
printf("%d %d\n", m, ++p);
printf("%d\n", p++);
printf("%d\n", p);


ispis:
Kod:
2 3
3
4


[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail Posjetite Web stranice
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3560)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 23:16 pon, 14. 11. 2011    Naslov: Citirajte i odgovorite

[quote="logikaus"]smijemo li se na prakticnom koristiti s <math.h>, jer su meni osobno laksi zadaci, kada se rjesavaju s pow(x,y)?[/quote]

To ne znaci da su tocni. Treba dobro poznavati stvari, da bi znalo kada je ok na cjelim brojevima koristiti funkcije iz [tt]math.h[/tt].

Primjer: Koliko znamenaka ima broj [tex](100000)_3 = 3^5 = 243[/tex] kad ga prikazujemo u ternarnoj bazi (baza 3)?

[code:1]#include <stdio.h>
#include <math.h>

int main(void) {
int n = 3*3*3*3*3, cnt = 0;
printf("Broj znamenaka u bazi 3 od %d je:\n * %.20f, tj. %d (preko log)\n", n, 1+log(n)/log(3), (int)(1+log(n)/log(3)));
while (n > 0) {
n /= 3;
++cnt;
}
printf(" * %d (direktno)\n", cnt);
return 0;
}[/code:1]

Ispis (moze se razlikovati od racunala do racunala; ovo je kod mene doma):

[code:1]Broj znamenaka u bazi 3 od 243 je:
* 5.99999999999999911182, tj. 5 (preko log)
* 6 (direktno)[/code:1]

Ovdje bi se trebalo sjetiti upotrijebiti zaokruzivanje, umjesto standardnog castanja na [tt]int[/tt]. Negdje drugdje bi vjerojatno bio neki drugi stos.

Ako smatrate da te stvari dovoljno dobro znate ili vam se riskira, koristite [tt]math.h[/tt] kad nije zabranjen. Ososbno, preferiram cjelobrojne algoritme skoro uvijek kad se radi s cijelim brojevima (funkcije u [tt]math.h[/tt] [b]sve[/b] rade s realnim brojevima).
logikaus (napisa):
smijemo li se na prakticnom koristiti s <math.h>, jer su meni osobno laksi zadaci, kada se rjesavaju s pow(x,y)?


To ne znaci da su tocni. Treba dobro poznavati stvari, da bi znalo kada je ok na cjelim brojevima koristiti funkcije iz math.h.

Primjer: Koliko znamenaka ima broj [tex](100000)_3 = 3^5 = 243[/tex] kad ga prikazujemo u ternarnoj bazi (baza 3)?

Kod:
#include <stdio.h>
#include <math.h>

int main(void) {
  int n = 3*3*3*3*3, cnt = 0;
  printf("Broj znamenaka u bazi 3 od %d je:\n  * %.20f, tj. %d (preko log)\n", n, 1+log(n)/log(3), (int)(1+log(n)/log(3)));
  while (n > 0) {
    n /= 3;
    ++cnt;
  }
  printf("  * %d (direktno)\n", cnt);
  return 0;
}


Ispis (moze se razlikovati od racunala do racunala; ovo je kod mene doma):

Kod:
Broj znamenaka u bazi 3 od 243 je:
  * 5.99999999999999911182, tj. 5 (preko log)
  * 6 (direktno)


Ovdje bi se trebalo sjetiti upotrijebiti zaokruzivanje, umjesto standardnog castanja na int. Negdje drugdje bi vjerojatno bio neki drugi stos.

Ako smatrate da te stvari dovoljno dobro znate ili vam se riskira, koristite math.h kad nije zabranjen. Ososbno, preferiram cjelobrojne algoritme skoro uvijek kad se radi s cijelim brojevima (funkcije u math.h sve rade s realnim brojevima).



_________________
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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
spik2nick
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 28. 09. 2011. (12:41:01)
Postovi: (D)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 23:27 pon, 14. 11. 2011    Naslov: 11.zadatak Citirajte i odgovorite

Zadatak 11:
Napiˇsite program koji uˇcitava neparne m, n (ne treba provjeravati neparnost od m i n), te ispisuje “reˇsetkastu” matricu po
recima popunjenu brojevima 1, 2, . . . .
Matrica je M je “reˇsetkasta” ako za sve neparne parove indeksa (i, j) vrijedi da je Mi,j = 0.
Primjeri:
m = 3, n = 5

1 2 3 4 5
6 0 7 0 8
9 10 11 12 13

m = 3, n = 7

1 2 3 4 5 6 7
8 0 9 0 10 0 11
12 13 14 15 16 17 18

m = 5, n = 5

1 2 3 4 5
6 0 7 0 8
9 10 11 12 13
14 0 15 0 16
17 18 19 20 21

Imam samo jedno pitanje vezano uz ovaj zadatak... U zadatku piše ua neparne parove(i,j) da je Mi,j=0... a čini mi se da je u test primjerima za parne parove (i,j) Mi,j=0. Zanima me jel to graška u postavljanju zadatka ili sam ja krivo razumio zadatak?
Zadatak 11:
Napiˇsite program koji uˇcitava neparne m, n (ne treba provjeravati neparnost od m i n), te ispisuje “reˇsetkastu” matricu po
recima popunjenu brojevima 1, 2, . . . .
Matrica je M je “reˇsetkasta” ako za sve neparne parove indeksa (i, j) vrijedi da je Mi,j = 0.
Primjeri:
m = 3, n = 5

1 2 3 4 5
6 0 7 0 8
9 10 11 12 13

m = 3, n = 7

1 2 3 4 5 6 7
8 0 9 0 10 0 11
12 13 14 15 16 17 18

m = 5, n = 5

1 2 3 4 5
6 0 7 0 8
9 10 11 12 13
14 0 15 0 16
17 18 19 20 21

Imam samo jedno pitanje vezano uz ovaj zadatak... U zadatku piše ua neparne parove(i,j) da je Mi,j=0... a čini mi se da je u test primjerima za parne parove (i,j) Mi,j=0. Zanima me jel to graška u postavljanju zadatka ili sam ja krivo razumio zadatak?



_________________
Pokušaj je prvi korak prema neuspjehu!!
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
gflegar
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 12. 10. 2011. (15:03:41)
Postovi: (10D)16
Spol: muško
Sarma = la pohva - posuda
68 = 72 - 4

PostPostano: 23:54 pon, 14. 11. 2011    Naslov: Re: 11.zadatak Citirajte i odgovorite

Bas sam testirao funkciju pow iz math.h i meni savrseno tocno izracunava sve cijelobrojne potencije < 100000000 za prirodne baze < 20.

Kod "realnih" baza u rasponu od 0.01 najveca razlika izmedju funkcije pow i iterativnog mnozenja je bila [tt]0.00048828125000000000[/tt] za potencije < 100000000000.

Evo koda koristenog za testiranje:
[code:1]#include <stdio.h>
#include <math.h>
#define MAX 100000000000.0

int main(void){
int j;
double i, pot, corr, max_err= 0.0;

printf("potencija | funkc. pow | tocno rj. | greska\n", i);
for (i= 2; i < 20; i+= 0.01){
corr= 1;
for (j= 1; corr < MAX; ++j){
corr*= i;
pot= pow(i, j);
if (pot - corr > max_err)max_err= pot - corr;
if (corr - pot > max_err)max_err= corr - pot;
printf("%9d | %15.4lf | %15.4lf | %12.10lf\n", j, pot, corr, pot - corr);
}
}
printf("najveca greska: %.20lf\n", max_err);

return 0;
}
[/code:1]

Tako da, barem na mojem racunalu, ovo radi prilicno dobro. A sad je na vama da li se hocete kockati ili ne. (Ja se necu :D )

[size=9][color=#999999]Added after 6 minutes:[/color][/size]

[quote="spik2nick"]
Imam samo jedno pitanje vezano uz ovaj zadatak... U zadatku piše ua neparne parove(i,j) da je Mi,j=0... a čini mi se da je u test primjerima za parne parove (i,j) Mi,j=0. Zanima me jel to graška u postavljanju zadatka ili sam ja krivo razumio zadatak?[/quote]

Indeksi pocinju od 0, a ne od 1.
Bas sam testirao funkciju pow iz math.h i meni savrseno tocno izracunava sve cijelobrojne potencije < 100000000 za prirodne baze < 20.

Kod "realnih" baza u rasponu od 0.01 najveca razlika izmedju funkcije pow i iterativnog mnozenja je bila 0.00048828125000000000 za potencije < 100000000000.

Evo koda koristenog za testiranje:
Kod:
#include <stdio.h>
#include <math.h>
#define MAX 100000000000.0

int main(void){
    int j;
    double i, pot, corr, max_err= 0.0;

    printf("potencija |      funkc. pow |       tocno rj. |  greska\n", i);
    for (i= 2; i < 20; i+= 0.01){
        corr= 1;
        for (j= 1; corr < MAX; ++j){
            corr*= i;
            pot= pow(i, j);
            if (pot - corr > max_err)max_err= pot - corr;
            if (corr - pot > max_err)max_err= corr - pot;
            printf("%9d | %15.4lf | %15.4lf | %12.10lf\n", j, pot, corr, pot - corr);
        }
    }
    printf("najveca greska: %.20lf\n", max_err);

    return 0;
}


Tako da, barem na mojem racunalu, ovo radi prilicno dobro. A sad je na vama da li se hocete kockati ili ne. (Ja se necu Very Happy )

Added after 6 minutes:

spik2nick (napisa):

Imam samo jedno pitanje vezano uz ovaj zadatak... U zadatku piše ua neparne parove(i,j) da je Mi,j=0... a čini mi se da je u test primjerima za parne parove (i,j) Mi,j=0. Zanima me jel to graška u postavljanju zadatka ili sam ja krivo razumio zadatak?


Indeksi pocinju od 0, a ne od 1.


[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail Posjetite Web stranice
spik2nick
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 28. 09. 2011. (12:41:01)
Postovi: (D)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 0:07 uto, 15. 11. 2011    Naslov: Re: 11.zadatak Citirajte i odgovorite

[quote="malalodacha"]int a=0,b=0,m,n,i=2,j=2;
printf("unesite 2 broja: ");
scanf("%d %d", &m,&n);
if(m<n)
{
for(m;m<=n;m++)
{
for(i;i<m;i++)
{
if(m%i==0)
a=a+i;
}
for(j;j<a;j++)
{
if(a%j==0)
b=b+j;
}
if(b==m)
printf("%d %d",a,b);
}
}
return 0;
}


može li mi netko objasniti što tu ne valja, radi se o zadatku s prijateljskim brojevima?? 4. zadatak je to, ja mislim[/quote]

Baš sam malo bolje pogledo zadatak. Prva greška ti je što su varijable i i j definirane gore kod inicijalizacije i kasniej ih povećaš u petljama a ne vratiš ih na početnu vrijednost. znaci for petlja ti se vrti od i do m i onda ti i zavrsi kao i=m i u sljedecem koraku kreces od i=m, a trebas ga vratit na i=1. (ne 2) u test primjeru je pokazano da se i jedinice računaju kao djeljitelji.

i druga greška je bila slična vrijednosti varijabli a i b isto moras vratit na a=0, b=0 nakon izvrsavanaj petlje svaki put.

i treća je bilo što piše u zadatku da jedan par treba ispisati jednom. a tebi nađe broj 220 pa ispiše 220 i 284 i nakon toga dođe do broja 284 pa onda ispiše 284 i 220. To sam rješio sa dodanim uvjetom na kraju da je a<=b.


evo kod pa ako još nest nije jasno moze pogledat:

[code:1]#include <stdio.h>
int main(void)
{
int a=0,b=0,m,n,i=1,j=1;
printf("unesite 2 broja: ");
scanf("%d %d", &m,&n);
if(m<n)
{
for(m=m;m<n;m++)
{
a=0;
b=0;
for(i=1;i<m;i++)
{

if(m%i==0)
a=a+i;
}
for(j=1;j<a;j++)
{

if(a%j==0)
b=b+j;
}

if(b==m && a<=b)
printf("%d %d",a,b);
}
}
return 0;
}
[/code:1]

[size=9][color=#999999]Added after 2 minutes:[/color][/size]

[quote="gflegar"]
Indeksi pocinju od 0, a ne od 1.[/quote]

Zaboravih... Hvala.
malalodacha (napisa):
int a=0,b=0,m,n,i=2,j=2;
printf("unesite 2 broja: ");
scanf("%d %d", &m,&n);
if(m<n)
{
for(m;m⇐n;m++)
{
for(i;i<m;i++)
{
if(m%i==0)
a=a+i;
}
for(j;j<a;j++)
{
if(a%j==0)
b=b+j;
}
if(b==m)
printf("%d %d",a,b);
}
}
return 0;
}


može li mi netko objasniti što tu ne valja, radi se o zadatku s prijateljskim brojevima?? 4. zadatak je to, ja mislim


Baš sam malo bolje pogledo zadatak. Prva greška ti je što su varijable i i j definirane gore kod inicijalizacije i kasniej ih povećaš u petljama a ne vratiš ih na početnu vrijednost. znaci for petlja ti se vrti od i do m i onda ti i zavrsi kao i=m i u sljedecem koraku kreces od i=m, a trebas ga vratit na i=1. (ne 2) u test primjeru je pokazano da se i jedinice računaju kao djeljitelji.

i druga greška je bila slična vrijednosti varijabli a i b isto moras vratit na a=0, b=0 nakon izvrsavanaj petlje svaki put.

i treća je bilo što piše u zadatku da jedan par treba ispisati jednom. a tebi nađe broj 220 pa ispiše 220 i 284 i nakon toga dođe do broja 284 pa onda ispiše 284 i 220. To sam rješio sa dodanim uvjetom na kraju da je a⇐b.


evo kod pa ako još nest nije jasno moze pogledat:

Kod:
#include <stdio.h>
int main(void)
{
int a=0,b=0,m,n,i=1,j=1;
printf("unesite 2 broja: ");
scanf("%d %d", &m,&n);
if(m<n)
{
for(m=m;m<n;m++)
{
    a=0;
    b=0;
    for(i=1;i<m;i++)
    {

        if(m%i==0)
        a=a+i;
    }
        for(j=1;j<a;j++)
    {

            if(a%j==0)
            b=b+j;
    }

        if(b==m && a<=b)
        printf("%d %d",a,b);
}
}
return 0;
}


Added after 2 minutes:

gflegar (napisa):

Indeksi pocinju od 0, a ne od 1.


Zaboravih... Hvala.



_________________
Pokušaj je prvi korak prema neuspjehu!!
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
malalodacha
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 11. 10. 2011. (17:06:13)
Postovi: (79)16
Sarma = la pohva - posuda
-24 = 9 - 33

PostPostano: 0:10 uto, 15. 11. 2011    Naslov: Citirajte i odgovorite

hvala na odgovoru, može li netko napisati još dio koda za zaokruživanje decimalnih brojeva tipa double? i baš mi treba kod, a ne ono sa printf("%.2g"....)
hvala na odgovoru, može li netko napisati još dio koda za zaokruživanje decimalnih brojeva tipa double? i baš mi treba kod, a ne ono sa printf("%.2g"....)


[Vrh]
Korisnički profil Pošaljite privatnu poruku
gflegar
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 12. 10. 2011. (15:03:41)
Postovi: (10D)16
Spol: muško
Sarma = la pohva - posuda
68 = 72 - 4

PostPostano: 0:19 uto, 15. 11. 2011    Naslov: Citirajte i odgovorite

Ja bih to rijesio s malo igranja sprintf-om, ali mislim da se od vas ocekuje ovako nesto:
[code:1]
double r=1.234567;
r= ((int)(r*100.0))/100.0;
[/code:1]
Ja bih to rijesio s malo igranja sprintf-om, ali mislim da se od vas ocekuje ovako nesto:
Kod:

double r=1.234567;
r= ((int)(r*100.0))/100.0;


[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail Posjetite Web stranice
spik2nick
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 28. 09. 2011. (12:41:01)
Postovi: (D)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 0:31 uto, 15. 11. 2011    Naslov: Citirajte i odgovorite

[quote="gflegar"]Ja bih to rijesio s malo igranja sprintf-om, ali mislim da se od vas ocekuje ovako nesto:
[code:1]
double r=1.234567;
r= ((int)(r*100.0))/100.0;
[/code:1][/quote]


I ja sam tako... ali nedostaje ti još zaokruživanje. ako je treća znamenka veća od 4...

[code:1]
double r=1.34567,z;
z=r*100.0;
r=(int)(r*100.0);
if(z-r>=0.5)r++;
r=r/100;
[/code:1]
gflegar (napisa):
Ja bih to rijesio s malo igranja sprintf-om, ali mislim da se od vas ocekuje ovako nesto:
Kod:

double r=1.234567;
r= ((int)(r*100.0))/100.0;



I ja sam tako... ali nedostaje ti još zaokruživanje. ako je treća znamenka veća od 4...

Kod:

double r=1.34567,z;
z=r*100.0;
r=(int)(r*100.0);
if(z-r>=0.5)r++;
r=r/100;



_________________
Pokušaj je prvi korak prema neuspjehu!!
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
gflegar
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 12. 10. 2011. (15:03:41)
Postovi: (10D)16
Spol: muško
Sarma = la pohva - posuda
68 = 72 - 4

PostPostano: 0:55 uto, 15. 11. 2011    Naslov: Citirajte i odgovorite

Zato sam i rekao da bih ja to rijesio sa sprintf-om, a uostalom nije bilo navedeno o kakvom je zaokruzivanju rijec, pa se ovo moje moze protumaciti kao "zaokruzivanje prema nuli" ^^
Zato sam i rekao da bih ja to rijesio sa sprintf-om, a uostalom nije bilo navedeno o kakvom je zaokruzivanju rijec, pa se ovo moje moze protumaciti kao "zaokruzivanje prema nuli" ^^


[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail Posjetite Web stranice
Zenon
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 09. 09. 2011. (19:14:43)
Postovi: (2B1)16
Sarma: -
Lokacija: [tex]\pm\infty[/tex]

PostPostano: 3:15 uto, 15. 11. 2011    Naslov: 7. zadatak, praktični kolokvij Citirajte i odgovorite

[b]Zadatak[/b]:
Napišite program koji učitava prirodne brojeve n i d, te pomoću zvjezdica “crta” niz “praznih” kvadrata stranice duljine n,
n − d, . . . (svaki u svoj redak).

Znam da ima, pa bih htio da mi netko pokaže jednostavnije rješenje od moga:
[code:1]#include<stdio.h>
int main(void)
{
int n,b,i,pz=1,sred; // i je broj redka, pz za print zvjezdica, sred su redovi zimedu prvog i zadnjeg redka
scanf("%d %d",&n,&b); //ucitava n i b
while (n>0)
{
for (i=1;i<=n;i++) //broj redka
{
if(i==1 || i==n) //prvi i zadnji redak
{
while (pz<=n)
{
printf("*");
pz++;
}
printf("\n");
pz=1;

}
else //redci izmedu
{
for (sred=1;sred<=n;sred++)
{
if (sred==1 || sred==n) printf("*"); //prvi i zadnji znak
else printf(" "); //znakovi izmedu
}
printf("\n");
}
}
n-=b;
}
return 0;
}
[/code:1]

Hvala unaprijed!
Zadatak:
Napišite program koji učitava prirodne brojeve n i d, te pomoću zvjezdica “crta” niz “praznih” kvadrata stranice duljine n,
n − d, . . . (svaki u svoj redak).

Znam da ima, pa bih htio da mi netko pokaže jednostavnije rješenje od moga:
Kod:
#include<stdio.h>
int main(void)
{
    int n,b,i,pz=1,sred; // i je broj redka, pz za print zvjezdica, sred su redovi zimedu prvog i zadnjeg redka
    scanf("%d %d",&n,&b); //ucitava n i b
    while (n>0)
    {
        for (i=1;i<=n;i++) //broj redka
        {
            if(i==1 || i==n) //prvi i zadnji redak
            {
                while (pz<=n)
                {
                    printf("*");
                    pz++;
                }
                printf("\n");
                pz=1;

            }
            else //redci izmedu
            {
                for (sred=1;sred<=n;sred++)
                {
                    if (sred==1 || sred==n) printf("*"); //prvi i zadnji znak
                    else printf(" "); //znakovi izmedu
                }
                printf("\n");
            }
        }
        n-=b;
    }
    return 0;
}


Hvala unaprijed!




Zadnja promjena: Zenon; 4:40 uto, 15. 11. 2011; ukupno mijenjano 1 put.
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2 Vremenska zona: GMT + 01:00.
Idite na Prethodno  1, 2, 3, 4, 5 ... 17, 18, 19  Sljedeće
Stranica 4 / 19.

 
Forum(o)Bir:  
Ne možete otvarati nove teme.
Ne možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan