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

4.DZ
WWW:

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


Pridružen/a: 11. 10. 2014. (07:50:24)
Postovi: (A)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 21:09 sri, 10. 12. 2014    Naslov: 4.DZ Citirajte i odgovorite

Može li mi netko objasniti 1. zadatak.

[quote]Zadatak 1:
Napišite program koji učitava cijeli broj n, te ispisuje sumu svih prostih djelitelja (uvažavajući kratnost) svih cijelih brojeva različitih od nule koji se nalaze između n i 1 (uključivo).[/quote]

tocnije sto znaci [quote](uvazavajuci kratnost)[/quote]

hvala :)
Može li mi netko objasniti 1. zadatak.

Citat:
Zadatak 1:
Napišite program koji učitava cijeli broj n, te ispisuje sumu svih prostih djelitelja (uvažavajući kratnost) svih cijelih brojeva različitih od nule koji se nalaze između n i 1 (uključivo).


tocnije sto znaci
Citat:
(uvazavajuci kratnost)


hvala Smile


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


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

PostPostano: 21:18 sri, 10. 12. 2014    Naslov: Citirajte i odgovorite

To znaci da svakog brojis onoliko puta kolika mu je kratnost. Konkretno, za broj [tex]144 = 2^4 \cdot 3^2[/tex] ta suma je jednaka [tex]4 \cdot 2 + 2 \cdot 3 = 14[/tex], a ne samo [tex]2 + 3 = 5[/tex].
To znaci da svakog brojis onoliko puta kolika mu je kratnost. Konkretno, za broj [tex]144 = 2^4 \cdot 3^2[/tex] ta suma je jednaka [tex]4 \cdot 2 + 2 \cdot 3 = 14[/tex], a ne samo [tex]2 + 3 = 5[/tex].



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


Pridružen/a: 11. 10. 2014. (07:50:24)
Postovi: (A)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 21:28 sri, 10. 12. 2014    Naslov: Citirajte i odgovorite

hvala!
hvala!


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


Pridružen/a: 11. 10. 2014. (07:50:24)
Postovi: (A)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 12:44 ned, 14. 12. 2014    Naslov: Citirajte i odgovorite

Može još jedno pitanje (isti zadatak), piše mi da mi je program netočan za input -38, ali ja ne znam što mi je točno krivo pa ako mi netko može pomoći?

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

int sumad (int n)
{
int i,test,suma=0,x;
x=n;

if(x==0) test=0;
else test=1;

do {
for (i=2;i<=x;i++)
{
if(x%i==0)
{
suma+=i;
test*=i;
x/=i;
break;
}
}
} while(test!=n);

return suma;
}

int abso(int x)
{
if (x<0) x*=-1;
return x;
}

int main(void)
{
int n;

scanf("%d",&n);
if (n<1)
{
while (n<=1)
{
if (n==0) {n++; continue;}
printf("%d\n",sumad( abso(n) ) );
n++;
}
}
else
{
while (n>=1)
{

printf("%d ",sumad(n));
n--;
}
}

return 0;
}
[/code:1]
Može još jedno pitanje (isti zadatak), piše mi da mi je program netočan za input -38, ali ja ne znam što mi je točno krivo pa ako mi netko može pomoći?

Kod:
#include <stdio.h>

int sumad (int n)
{
    int i,test,suma=0,x;
    x=n;

    if(x==0) test=0;
    else test=1;

    do {
            for (i=2;i<=x;i++)
                {
                    if(x%i==0)
                        {
                            suma+=i;
                            test*=i;
                            x/=i;
                            break;
                        }
                }
    } while(test!=n);

    return suma;
}

int abso(int x)
{
    if (x<0) x*=-1;
    return x;
}

int main(void)
{
    int n;

    scanf("%d",&n);
    if (n<1)
    {
        while (n<=1)
        {
             if (n==0) {n++; continue;}
             printf("%d\n",sumad( abso(n) ) );
             n++;
        }
    }
    else
    {
        while (n>=1)
        {

            printf("%d ",sumad(n));
            n--;
        }
    }

    return 0;
}


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


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

PostPostano: 13:44 ned, 14. 12. 2014    Naslov: Citirajte i odgovorite

U zadatku pise "ispisuje sumu" (ne "sume"), dakle jednu jedinu sumu. Tebi ce se [tt]printf[/tt] ispisati za skoro svaki broj izmedju 1 i [tt]n[/tt].

Usput, petlja u [tt]sumad[/tt] je jako lose napisana. Ako ispadne da je, recimo, 17 prosti faktor u [tt]n[/tt], ti prekidas petlju i opet provjeravas za sve [tt]i[/tt] od 2 nadalje. I tako za svaki prosti faktor, onoliko puta kolika mu je kratnost.

Pogledaj u vjezbama kako se vade prosti faktori broja. To je solidno koristan algoritam.
U zadatku pise "ispisuje sumu" (ne "sume"), dakle jednu jedinu sumu. Tebi ce se printf ispisati za skoro svaki broj izmedju 1 i n.

Usput, petlja u sumad je jako lose napisana. Ako ispadne da je, recimo, 17 prosti faktor u n, ti prekidas petlju i opet provjeravas za sve i od 2 nadalje. I tako za svaki prosti faktor, onoliko puta kolika mu je kratnost.

Pogledaj u vjezbama kako se vade prosti faktori broja. To je solidno koristan algoritam.



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


Pridružen/a: 11. 10. 2014. (07:50:24)
Postovi: (A)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 18:25 ned, 14. 12. 2014    Naslov: Citirajte i odgovorite

Da shvatio sam, već mi se to par puta dogodilo da točno napišem kod, ali krivu stvar ispišem jer ne čitam dovoljno pažljivo zadatak.

Hvala na komentaru, ali pokušavam ne koristiti skriptu kada pišem programe čisto da sam skužim neke stvari sam pa su mi većina kodova malo veće složenosti nego što bi mogli biti, pogledat ću si sve te "važne algoritme" u skripti samo da vidim što sve prekomplicirano radim.

Hvala još jednom :)
Da shvatio sam, već mi se to par puta dogodilo da točno napišem kod, ali krivu stvar ispišem jer ne čitam dovoljno pažljivo zadatak.

Hvala na komentaru, ali pokušavam ne koristiti skriptu kada pišem programe čisto da sam skužim neke stvari sam pa su mi većina kodova malo veće složenosti nego što bi mogli biti, pogledat ću si sve te "važne algoritme" u skripti samo da vidim što sve prekomplicirano radim.

Hvala još jednom Smile


[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.
Stranica 1 / 1.

 
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