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

DZ 4 i 5 (zadatak)
WWW:
Idite na Prethodno  1, 2, 3, ... 11, 12, 13  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
matematičarka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 01. 10. 2011. (18:19:07)
Postovi: (38)16
Sarma = la pohva - posuda
= 0 - 0
Lokacija: Planet Zemlja

PostPostano: 23:18 ned, 4. 12. 2011    Naslov: Citirajte i odgovorite

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

int main (void)
{
int a, b, i, ima=0;
scanf("%d %d", &a, &b);
if(a<b)
{
for(i=a+1; i<b; ++i)
{
if((i+57)%5==0)
{
if(((i+57)/5)%7==0)
{
printf("%d ", i);
ima=1;
}
}
}
if(ima==0)
printf("Nema takvih brojeva.\n");
}
else
{
for(i=b+1; i<a; ++i)
{
if((i+57)%5==0)
{
if(((i+57)/5)%7==0)
{
printf("%d ", i);
ima=1;
}
}
}
if(ima==0)
printf("Nema takvih brojeva.\n");
}
return 0;
}

[/code:1]
Iz nekog razloga mi ne prihvaća ovaj kod pa čak ni kad dodam još i slučaj a=b. :/
[code:1]
#include <stdio.h>
#include <stdlib.h>

int main (void)
{
int a, b, i, ima=0;
scanf("%d %d", &a, &b);
if(a<b)
{
for(i=a+1; i<b; ++i)
{
if(((i+57)/5)%7==0)
{
printf("%d ", i);
ima=1;
}
}
if(ima==0)
printf("Nema takvih brojeva.\n");
}
else
{
for(i=b+1; i<a; ++i)
{
if(((i+57)/5)%7==0)
{
printf("%d ", i);
ima=1;
}
}
if(ima==0)
printf("Nema takvih brojeva.\n");
}
return 0;
}

[/code:1]
2 verzije. jedna provjerava da li je uopće i-57 dijeljiv s 5, a druga ne. Obje ne rade
Kod:

#include <stdio.h>
#include <stdlib.h>

int main (void)
{
    int a, b, i, ima=0;
    scanf("%d %d", &a, &b);
    if(a<b)
    {
        for(i=a+1; i<b; ++i)
        {
           if((i+57)%5==0)
            {
                if(((i+57)/5)%7==0)
                {
                    printf("%d ", i);
                    ima=1;
                }
            }
        }
        if(ima==0)
            printf("Nema takvih brojeva.\n");
    }
    else
    {
        for(i=b+1; i<a; ++i)
        {
           if((i+57)%5==0)
            {
                if(((i+57)/5)%7==0)
                {
                    printf("%d ", i);
                    ima=1;
                }
            }
        }
        if(ima==0)
            printf("Nema takvih brojeva.\n");
    }
    return 0;
}


Iz nekog razloga mi ne prihvaća ovaj kod pa čak ni kad dodam još i slučaj a=b. Ehm?
Kod:

#include <stdio.h>
#include <stdlib.h>

int main (void)
{
    int a, b, i, ima=0;
    scanf("%d %d", &a, &b);
    if(a<b)
    {
        for(i=a+1; i<b; ++i)
        {
           if(((i+57)/5)%7==0)
            {
                printf("%d ", i);
                ima=1;
            }
        }
        if(ima==0)
            printf("Nema takvih brojeva.\n");
    }
    else
    {
        for(i=b+1; i<a; ++i)
        {
           if(((i+57)/5)%7==0)
            {
                printf("%d ", i);
                ima=1;
            }
        }
        if(ima==0)
            printf("Nema takvih brojeva.\n");
    }
    return 0;
}


2 verzije. jedna provjerava da li je uopće i-57 dijeljiv s 5, a druga ne. Obje ne rade



_________________
Google is my best friend! Google rulez!

Coffee is my addiction! Iskočiše mi oči od čudidbe!
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Phoenix
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 15. 05. 2010. (18:46:07)
Postovi: (164)16
Sarma: -

PostPostano: 0:10 pon, 5. 12. 2011    Naslov: Citirajte i odgovorite

Drugi kod ti uopće ne valja - gledaš samo je li kvocijent djeljiv sa [tex]7[/tex], što znači da ispisuje i više brojeva nego treba (recimo, za broj [tex]-21[/tex] će provjeriti je li [tex](-21+57)/5=36/5=7[/tex] djeljiv sa [tex]7[/tex], što jest, i ispisati [tex]-21[/tex], a to očito nije rješenje zadatka)
Međutim, prvi kod mi izgleda ispravan i ne vidim grešku. Što ti kaže aplikacija, na kojem test primjeru ti je pao program? I jesi li ispoštovala sve uvjete koje nalaže aplikacija ((ne)ispis novog reda i slično)?
Drugi kod ti uopće ne valja - gledaš samo je li kvocijent djeljiv sa [tex]7[/tex], što znači da ispisuje i više brojeva nego treba (recimo, za broj [tex]-21[/tex] će provjeriti je li [tex](-21+57)/5=36/5=7[/tex] djeljiv sa [tex]7[/tex], što jest, i ispisati [tex]-21[/tex], a to očito nije rješenje zadatka)
Međutim, prvi kod mi izgleda ispravan i ne vidim grešku. Što ti kaže aplikacija, na kojem test primjeru ti je pao program? I jesi li ispoštovala sve uvjete koje nalaže aplikacija ((ne)ispis novog reda i slično)?


[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: 0:41 pon, 5. 12. 2011    Naslov: Citirajte i odgovorite

[quote="matematičarka"]Napišite program koji učitava prirodne brojeve a i b, te u rastućem poretku ispisuje sve cijele brojeve oblika 5⋅7i-57 koji se nalaze između a i b (bez a i b). Ispisane brojeve odvojite razmacima. Ako takvih brojeva nema, program ispisuje poruku "Nema takvih brojeva.". Pazite da tekst bude naveden točno kako piše (bez navodnika)!
Oprez: može biti a<b ili a>b ili a=b![/quote]

Kad se trazi pomoc, korisno je zadatak napisati kako spada. Traze se brojevi oblika [tex]5 \cdot 7^i - 57[/tex].

Dakle, ako imas broj [tt]x[/tt] i zanima te je li on oblika [tex]5 \cdot 7^i - 57[/tex], za neki [tex]i \in \mathbb{N}_0[/tex]. Drugim rijecima, treba provjeriti:
1. je li [tex]x + 57[/tex] djeljivo s 5 i, ako je,
2. je li [tex]\frac{x+57}{5}[/tex] potencija broja 7.
Ovo drugo smo radili na predavanjima (tamo je bila potencija broja 2), pa prouci tamo.

Naravno, ovdje je zdravije samo generirati takve brojeve (kad raste [tt]i[/tt], rastu i oni) i samo provjeravati jesu li izmedju [tt]a[/tt] i [tt]b[/tt].

Takodjer, dvije grane programa su cisti visak. Ako [tt]a[/tt] i [tt]b[/tt] nisu u redoslijedu koji ti pase, zamijeni ih i onda imas jedinstveni preostali kod.
matematičarka (napisa):
Napišite program koji učitava prirodne brojeve a i b, te u rastućem poretku ispisuje sve cijele brojeve oblika 5⋅7i-57 koji se nalaze između a i b (bez a i b). Ispisane brojeve odvojite razmacima. Ako takvih brojeva nema, program ispisuje poruku "Nema takvih brojeva.". Pazite da tekst bude naveden točno kako piše (bez navodnika)!
Oprez: može biti a<b ili a>b ili a=b!


Kad se trazi pomoc, korisno je zadatak napisati kako spada. Traze se brojevi oblika [tex]5 \cdot 7^i - 57[/tex].

Dakle, ako imas broj x i zanima te je li on oblika [tex]5 \cdot 7^i - 57[/tex], za neki [tex]i \in \mathbb{N}_0[/tex]. Drugim rijecima, treba provjeriti:
1. je li [tex]x + 57[/tex] djeljivo s 5 i, ako je,
2. je li [tex]\frac{x+57}{5}[/tex] potencija broja 7.
Ovo drugo smo radili na predavanjima (tamo je bila potencija broja 2), pa prouci tamo.

Naravno, ovdje je zdravije samo generirati takve brojeve (kad raste i, rastu i oni) i samo provjeravati jesu li izmedju a i b.

Takodjer, dvije grane programa su cisti visak. Ako a i b nisu u redoslijedu koji ti pase, zamijeni ih i onda imas jedinstveni preostali kod.



_________________
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
Phoenix
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 15. 05. 2010. (18:46:07)
Postovi: (164)16
Sarma: -

PostPostano: 0:52 pon, 5. 12. 2011    Naslov: Citirajte i odgovorite

A ja još gledam zašto jednostavno ne gleda ostatak pri dijeljenju s [tex]35[/tex] i razmišljam, dobro, ako je curi tako lakše, neka joj bude. :D
Ne znam sad je li loše ili ne to što se nisam sjetio kako je meni izgledao zadatak prije godinu dana i ispravio je, odnosno da mi ovo nije izgledalo malo prelagano... :P
A ja još gledam zašto jednostavno ne gleda ostatak pri dijeljenju s [tex]35[/tex] i razmišljam, dobro, ako je curi tako lakše, neka joj bude. Very Happy
Ne znam sad je li loše ili ne to što se nisam sjetio kako je meni izgledao zadatak prije godinu dana i ispravio je, odnosno da mi ovo nije izgledalo malo prelagano... Razz


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


Pridružen/a: 26. 10. 2011. (14:16:34)
Postovi: (84)16
Spol: žensko
Sarma = la pohva - posuda
= 5 - 4

PostPostano: 17:48 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

moze mi netko pomoci di grijesim u zadatku?? :?

Napišite program koji učitava prirodni broj n<131, te niz od n cijelih brojeva. Program treba pronaći najveći element niza djeljiv s 19, te u originalnom poretku ispisati indekse onih elementa niza kojima je prva znamenka jedna od znamenki pronađenog maksimuma.
Ako traženi maksimum ne postoji, program ne smije ništa ispisati. Ispisane brojeve odvojite razmacima.


#include<stdio.h>
int z(int a) {
int z;
while(a>9) a=a/10;
z=a;
return z;
}
int main(void) {
int n, i, a[131], max, zn[10], j=0, b, k, m;
scanf("%d", &n);
for(i=0;i<n;i++)
scanf("%d", &a[i]);
for(i=0;i<n;i++) {
if(a[i]%19==0) {
max=a[i];
m=i;
}
}
for(i=0;i<n;i++) {
if(a[i]%19==0) {
if(max<a[i])
max=a[i];
m=i;
}
}
printf("max = %d\n", max);
while(max>0) {
zn[j] = max%10;
max=max/10;
j++;
}
for(i=m;i<n;i++) {
a[i]=a[i+1];
}
n--;
for(i=0;i<n;i++) {
for(k=0;k<=j;k++) {
if(z(a[i]) == zn[k]) printf("%d ", i);
}
}
return 0;
}
moze mi netko pomoci di grijesim u zadatku?? Confused

Napišite program koji učitava prirodni broj n<131, te niz od n cijelih brojeva. Program treba pronaći najveći element niza djeljiv s 19, te u originalnom poretku ispisati indekse onih elementa niza kojima je prva znamenka jedna od znamenki pronađenog maksimuma.
Ako traženi maksimum ne postoji, program ne smije ništa ispisati. Ispisane brojeve odvojite razmacima.


#include<stdio.h>
int z(int a) {
int z;
while(a>9) a=a/10;
z=a;
return z;
}
int main(void) {
int n, i, a[131], max, zn[10], j=0, b, k, m;
scanf("%d", &n);
for(i=0;i<n;i++)
scanf("%d", &a[i]);
for(i=0;i<n;i++) {
if(a[i]%19==0) {
max=a[i];
m=i;
}
}
for(i=0;i<n;i++) {
if(a[i]%19==0) {
if(max<a[i])
max=a[i];
m=i;
}
}
printf("max = %d\n", max);
while(max>0) {
zn[j] = max%10;
max=max/10;
j++;
}
for(i=m;i<n;i++) {
a[i]=a[i+1];
}
n–;
for(i=0;i<n;i++) {
for(k=0;k⇐j;k++) {
if(z(a[i]) == zn[k]) printf("%d ", i);
}
}
return 0;
}


[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: 17:59 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

Napišite program koji učitava prirodne brojeve a i b, te u rastućem poretku ispisuje sve cijele brojeve oblika 2⋅6i-68 koji se nalaze između a i b (bez a i b). Ispisane brojeve odvojite razmacima. Ako takvih brojeva nema, program ispisuje poruku "Nema takvih brojeva.". Pazite da tekst bude naveden točno kako piše (bez navodnika)!
Oprez: može biti a<b ili a>b ili a=b!

već previše puta sam napisala ovo i DeGiorgi ne priznaje; što radim krivo?
[code:1]
#include<stdio.h>

int dobar (int n)

{
n+=68;

if(n%12)return 0;

return 1;



}


int main (void)

{

int a, b, i, bio=0;

scanf("%d%d", &a, &b);


if (a > b) {
a^=b;
b^=a;
a^=b;
}


for(i=a+1; i<b; i++)

{

if(dobar(i)) {printf("%d ", i); bio=1; }



}

if(!bio)printf("Nema takvih brojeva.");


return 0;


}

[/code:1]

[code:1]
#include<stdio.h>
int dobar (int n)
{

n+=68;
if (n<0) n=-n;
if (n%2) return 0;
n/=2;
if(n%6)return 0;
return 1;

}



int main (void)
{
int a, b, i, bio=0;
scanf("%d%d", &a, &b);
for(i=a+1; i<b; i++)
{
if(dobar(i)) {printf("%d ", i); bio=1; }

}
if(!bio)printf("Nema takvih brojeva.");
return 0;


}

[/code:1]
Napišite program koji učitava prirodne brojeve a i b, te u rastućem poretku ispisuje sve cijele brojeve oblika 2⋅6i-68 koji se nalaze između a i b (bez a i b). Ispisane brojeve odvojite razmacima. Ako takvih brojeva nema, program ispisuje poruku "Nema takvih brojeva.". Pazite da tekst bude naveden točno kako piše (bez navodnika)!
Oprez: može biti a<b ili a>b ili a=b!

već previše puta sam napisala ovo i DeGiorgi ne priznaje; što radim krivo?
Kod:

#include<stdio.h>

int dobar (int n)

{
    n+=68;

    if(n%12)return 0;

    return 1;



}


int main (void)

{

    int a, b, i, bio=0;

    scanf("%d%d", &a, &b);


    if (a > b) {
      a^=b;
      b^=a;
      a^=b;
    }


    for(i=a+1; i<b; i++)

        {

            if(dobar(i)) {printf("%d ", i); bio=1; }



        }

if(!bio)printf("Nema takvih brojeva.");


    return 0;


}



Kod:

#include<stdio.h>
int dobar (int n)
{

    n+=68;
    if (n<0) n=-n;
    if (n%2) return 0;
    n/=2;
    if(n%6)return 0;
    return 1;

}



int main (void)
{
    int a, b, i, bio=0;
    scanf("%d%d", &a, &b);
    for(i=a+1; i<b; i++)
        {
            if(dobar(i)) {printf("%d ", i); bio=1; }

        }
if(!bio)printf("Nema takvih brojeva.");
    return 0;


}



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


Pridružen/a: 07. 09. 2011. (10:59:19)
Postovi: (87)16
Spol: žensko
Sarma = la pohva - posuda
= 13 - 8

PostPostano: 18:39 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

[quote="boksi"]Napišite program koji učitava prirodne brojeve a i b, te u rastućem poretku ispisuje sve cijele brojeve oblika 2⋅6i-68 koji se nalaze između a i b (bez a i b). Ispisane brojeve odvojite razmacima. Ako takvih brojeva nema, program ispisuje poruku "Nema takvih brojeva.". Pazite da tekst bude naveden točno kako piše (bez navodnika)!
[b]Oprez: može biti a<b ili a>b ili a=b![/b]

već previše puta sam napisala ovo i DeGiorgi ne priznaje; što radim krivo?


[code:1]
#include<stdio.h>
int dobar (int n)
{

n+=68;
if (n<0) n=-n;
if (n%2) return 0;
n/=2;
if(n%6)return 0;
return 1;

}



int main (void)
{
int a, b, i, bio=0,t;
scanf("%d%d", &a, &b);
if(a>b) { t=a; a=b; b=t; }
for(i=a+1; i<b; i++)
{
if(dobar(i)) {printf("%d ", i); bio=1; }

}
if(!bio)printf("Nema takvih brojeva.");
return 0;


}

[/code:1][/quote]

znači ako je npr.a=1,b=15 ispiše 4(što je točno),ali ako je a=15,b=1 treba također ispisati 4 a ne Nema takvih brojeva.
znači trebaš još napraviti zamjenu a i b kada je b<a.

druga stvar:jeli ti u zadatku 2⋅6i-68 ili 2⋅6^i-68?
boksi (napisa):
Napišite program koji učitava prirodne brojeve a i b, te u rastućem poretku ispisuje sve cijele brojeve oblika 2⋅6i-68 koji se nalaze između a i b (bez a i b). Ispisane brojeve odvojite razmacima. Ako takvih brojeva nema, program ispisuje poruku "Nema takvih brojeva.". Pazite da tekst bude naveden točno kako piše (bez navodnika)!
Oprez: može biti a<b ili a>b ili a=b!

već previše puta sam napisala ovo i DeGiorgi ne priznaje; što radim krivo?


Kod:

#include<stdio.h>
int dobar (int n)
{

    n+=68;
    if (n<0) n=-n;
    if (n%2) return 0;
    n/=2;
    if(n%6)return 0;
    return 1;

}



int main (void)
{
    int a, b, i, bio=0,t;
    scanf("%d%d", &a, &b);
 if(a>b) { t=a; a=b;  b=t; }
    for(i=a+1; i<b; i++)
        {
            if(dobar(i)) {printf("%d ", i); bio=1; }

        }
if(!bio)printf("Nema takvih brojeva.");
    return 0;


}



znači ako je npr.a=1,b=15 ispiše 4(što je točno),ali ako je a=15,b=1 treba također ispisati 4 a ne Nema takvih brojeva.
znači trebaš još napraviti zamjenu a i b kada je b<a.

druga stvar:jeli ti u zadatku 2⋅6i-68 ili 2⋅6^i-68?




Zadnja promjena: anamarie; 18:43 uto, 6. 12. 2011; ukupno mijenjano 1 put.
[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: 18:43 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

To bi trebalo biti [tex]2 \cdot 6i - 68[/tex] ili [tex]2 \cdot 6^i -68[/tex], jer ako je ovo drugo onda ideja nije dobra, npr. za broj [tt]92[/tt] tebi funkcija [tt]dobar()[/tt] vraca 1 iako on nije tog oblika. (pretpostavljam da je [tex]6^i[/tex] jer sam ja imao slican zadatak u zadaci)
To bi trebalo biti [tex]2 \cdot 6i - 68[/tex] ili [tex]2 \cdot 6^i -68[/tex], jer ako je ovo drugo onda ideja nije dobra, npr. za broj 92 tebi funkcija dobar() vraca 1 iako on nije tog oblika. (pretpostavljam da je [tex]6^i[/tex] jer sam ja imao slican zadatak u zadaci)


[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail Posjetite Web stranice
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: 19:43 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

6^i je. idem onda ponovo pokušati, hm.

@anamarie, prvi program radi i kada stavim 15, 1, ali i dalje ne valja.

@gflegar, meni ne ispisuje nikakav 92, ni jedan program.
6^i je. idem onda ponovo pokušati, hm.

@anamarie, prvi program radi i kada stavim 15, 1, ali i dalje ne valja.

@gflegar, meni ne ispisuje nikakav 92, ni jedan program.


[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: 20:06 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

Greska, trebalo je pisati [tt]-44[/tt] a ne [tt]92[/tt], racunal sam [tt]24 + 68[/tt] a trebalo je [tt]24 - 68[/tt] :P
Greska, trebalo je pisati -44 a ne 92, racunal sam 24 + 68 a trebalo je 24 - 68 Razz


[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail Posjetite Web stranice
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:10 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

i, zna li mi itko reći zašto ovaj prvi program nije prihvaćen? izluđuje me on!
i, zna li mi itko reći zašto ovaj prvi program nije prihvaćen? izluđuje me on!


[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: 21:40 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

Ako pitas za ovaj s funkcijom
[code:1]int dobar (int n)

{
n+=68;

if(n%12)return 0;

return 1;



}[/code:1]
onda je stvar u tome da tu provjeravas je li [tex]n-68[/tex] djeljivo s 12, a ne je li to "2 puta neka potencija od 6".
Ako pitas za ovaj s funkcijom
Kod:
int dobar (int n)

{
    n+=68;

    if(n%12)return 0;

    return 1;



}

onda je stvar u tome da tu provjeravas je li [tex]n-68[/tex] djeljivo s 12, a ne je li to "2 puta neka potencija od 6".



_________________
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
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: 22:30 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

je li ovako bolje?
[code:1]
int dobar (int n)

{



n+=68;

if(n%2)return 0;
else n/=2;
if(n%6)return 0;
else return 1;



}
[/code:1]
je li ovako bolje?
Kod:

int dobar (int n)

{



    n+=68;

    if(n%2)return 0;
    else n/=2;
    if(n%6)return 0;
    else return 1;



}


[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: 23:50 uto, 6. 12. 2011    Naslov: Citirajte i odgovorite

Ne, to je ekvivalentno [tt]n % 12[/tt]
Ne, to je ekvivalentno n % 12


[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: 1:51 sri, 7. 12. 2011    Naslov: Citirajte i odgovorite

@boksi: Nagadjanjem neces puno postici, pogotovo ne na kolokviju gdje toga nema. Probaj uvrstiti neke brojeve, za koje ima smisla, pa vidi sto program radi i sto bi trebao raditi.

Kako znati sto ima smisla? Recimo, tebi smo rekli da provjeravas djeljivost s 12, umjesto da provjeravas je li ti broj "2 puta potencija broja 6". Pa onda probaj za n = 24 - 68 = -44, dakle -- kad maknes ovih 68 -- za broj koji je djeljiv s 12 i nije "2 puta potencija broja 6". Taj ti je primjer vec gflegar naveo i samo da si to probao vidio bi da ti ne vraca dobro, bez da ovdje pitas.

Programiranje pogadjanjem ide samo ako imate jako puno vremena, mogucnost neiscrpnog isprobavanja i ludu srecu. Dakle, solidno nepouzdana metoda. Uvrstavajte brojeve, ljudi, i provjeravajte sto program radi i sto bi trebao raditi (ovo drugo se izracuna na ruke). Malo zdravog razuma i zacas "pogodite" s(p)retne primjere. Nije skroz pouzdano, ali daleko pouzdanije od pogadjanja rjesenja.

I, za kraj, aplikacija za zadace kaze na kojem primjeru je program pao provjeru. Dakle, mozete i za to izracunati na ruke i provjeriti sto program ispisuje.

P.S. O ovom zadatku se vec raspravljalo. Ne ocekuj da isto pisemo opet, pogotovo sto je slicna stvar (potencije broja 2) obradjena na predavanjima.

P.P.S. @gflegar: [tt](n+68[i][/i]) % 12[/tt]. ;)
@boksi: Nagadjanjem neces puno postici, pogotovo ne na kolokviju gdje toga nema. Probaj uvrstiti neke brojeve, za koje ima smisla, pa vidi sto program radi i sto bi trebao raditi.

Kako znati sto ima smisla? Recimo, tebi smo rekli da provjeravas djeljivost s 12, umjesto da provjeravas je li ti broj "2 puta potencija broja 6". Pa onda probaj za n = 24 - 68 = -44, dakle – kad maknes ovih 68 – za broj koji je djeljiv s 12 i nije "2 puta potencija broja 6". Taj ti je primjer vec gflegar naveo i samo da si to probao vidio bi da ti ne vraca dobro, bez da ovdje pitas.

Programiranje pogadjanjem ide samo ako imate jako puno vremena, mogucnost neiscrpnog isprobavanja i ludu srecu. Dakle, solidno nepouzdana metoda. Uvrstavajte brojeve, ljudi, i provjeravajte sto program radi i sto bi trebao raditi (ovo drugo se izracuna na ruke). Malo zdravog razuma i zacas "pogodite" s(p)retne primjere. Nije skroz pouzdano, ali daleko pouzdanije od pogadjanja rjesenja.

I, za kraj, aplikacija za zadace kaze na kojem primjeru je program pao provjeru. Dakle, mozete i za to izracunati na ruke i provjeriti sto program ispisuje.

P.S. O ovom zadatku se vec raspravljalo. Ne ocekuj da isto pisemo opet, pogotovo sto je slicna stvar (potencije broja 2) obradjena na predavanjima.

P.P.S. @gflegar: (n+68) % 12. Wink



_________________
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
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: 10:41 sri, 7. 12. 2011    Naslov: Citirajte i odgovorite

isprike. jutros sam shvatila gdje sam griješila cijelo vrijeme.
ne volim nagađati, ali ovaj me zadatak skroz pomutio.
hvala puno!
isprike. jutros sam shvatila gdje sam griješila cijelo vrijeme.
ne volim nagađati, ali ovaj me zadatak skroz pomutio.
hvala puno!


[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: 12:23 sri, 7. 12. 2011    Naslov: Citirajte i odgovorite

@vsego Ja sam komentirao razliku druge funkcije s prvom, tj. ovaj dio koda:
[code:1] if(n%2)return 0;
else n/=2;
if(n%6)return 0;
else return 1; [/code:1]
@vsego Ja sam komentirao razliku druge funkcije s prvom, tj. ovaj dio koda:
Kod:
    if(n%2)return 0;
    else n/=2;
    if(n%6)return 0;
    else return 1;


[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: 14:04 sri, 7. 12. 2011    Naslov: Citirajte i odgovorite

@gflegar: Ama, znam i nama dvojici je to jasno, ali zbog sire populacije treba biti korektno napisano (a pisao si reply na upit o cijeloj funkciji). ;)

@boksi: Ne treba se ispricavati. Dovoljno je da primijenis sto sam napisao, dok jos imas vremena nauciti kako spada.
@gflegar: Ama, znam i nama dvojici je to jasno, ali zbog sire populacije treba biti korektno napisano (a pisao si reply na upit o cijeloj funkciji). Wink

@boksi: Ne treba se ispricavati. Dovoljno je da primijenis sto sam napisao, dok jos imas vremena nauciti kako spada.



_________________
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
slonic~tonic
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 26. 10. 2011. (14:16:34)
Postovi: (84)16
Spol: žensko
Sarma = la pohva - posuda
= 5 - 4

PostPostano: 22:18 sri, 7. 12. 2011    Naslov: Citirajte i odgovorite

di grijesim?? ://
Napišite program koji učitava prirodni broj n<71, te niz od n cijelih brojeva. Program treba u originalnom poretku ispisati sve elemente x[i] niza takve da je ostatak pri dijeljenju apsolutne vrijednosti x[i] s 15 jednak ostatku koji pri istom takvom dijeljenju daje najmanji od učitanih brojeva. Ispisane brojeve odvojite razmakom.

#include<stdio.h>
int abs(int x) {
if(x<0) return -x;
else return x;
}
int main(void) {
int n, i, x[71], ost, min;
scanf("%d", &n);
for(i=0;i<n;i++)
scanf("%d", &x[i]);
min = abs(x[0]);
for(i=1;i<n;i++) {
if(min>abs(x[i])) min=abs(x[i]);
}
ost=min%15;
for(i=0;i<n;i++) {
if(abs(x[i])%15==ost)
printf("%d ", x[i]);
}
return 0;
}
di grijesim?? Ehm?/
Napišite program koji učitava prirodni broj n<71, te niz od n cijelih brojeva. Program treba u originalnom poretku ispisati sve elemente x[i] niza takve da je ostatak pri dijeljenju apsolutne vrijednosti x[i] s 15 jednak ostatku koji pri istom takvom dijeljenju daje najmanji od učitanih brojeva. Ispisane brojeve odvojite razmakom.

#include<stdio.h>
int abs(int x) {
if(x<0) return -x;
else return x;
}
int main(void) {
int n, i, x[71], ost, min;
scanf("%d", &n);
for(i=0;i<n;i++)
scanf("%d", &x[i]);
min = abs(x[0]);
for(i=1;i<n;i++) {
if(min>abs(x[i])) min=abs(x[i]);
}
ost=min%15;
for(i=0;i<n;i++) {
if(abs(x[i])%15==ost)
printf("%d ", x[i]);
}
return 0;
}


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


Pridružen/a: 05. 10. 2009. (17:48:30)
Postovi: (143)16
Spol: muško
Sarma = la pohva - posuda
83 = 86 - 3

PostPostano: 0:01 čet, 8. 12. 2011    Naslov: Citirajte i odgovorite

U trazenju minimuma je stvar.
Treba naci najobicniji minimum niza, dakle bez ikakvih apsolutnih vrijednosti.
U trazenju minimuma je stvar.
Treba naci najobicniji minimum niza, dakle bez ikakvih apsolutnih vrijednosti.


[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, ... 11, 12, 13  Sljedeće
Stranica 2 / 13.

 
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