Code Blocks compile
Select messages from
# through # FAQ
[/[Print]\]

Forum@DeGiorgi -> Programiranje 1 i 2

#1: Code Blocks compile Autor/ica: ludamath PostPostano: 10:12 sri, 2. 4. 2014
    —
[code]
#include <stdio.h>
int part( int x) {
if(x < 0) return 0;
if(x == 0) return 1;
[i]return part(x − 2) + part(x − 3) + part(x − 5)[/i];
}

int main( void) {
int n ;

printf (" Upisite broj n : " ) ; scanf ("%d" , &n ) ;
printf ("Takvih rastava ima %d. \ n" , part (n ) ) ;

return 0;
}
[/code]



Code Blocks mi stalno javlja grešku i to u funkciji na dijelu return part(x − 2) + part(x − 3) + part(x − 5),
uzela sam kod iz skripte i opet isto.

Help!!!

#2:  Autor/ica: fireballLokacija: s rukom u vatri i nogom u grobu PostPostano: 10:41 sri, 2. 4. 2014
    —
sta kaze zadatak? sta kaze greska?

#3:  Autor/ica: hendrix PostPostano: 10:46 sri, 2. 4. 2014
    —
Problem je u znaku minus (-), CodeBlocks ovo sto ti u kodu imas ne prepoznaje kao minus nego kao nesto drugo (izgleda mi kao onaj znak koji Word stvori razmakom nakon dasha, nisam siguran kako se to zove Very Happy ).

#4:  Autor/ica: ludamath PostPostano: 13:28 sri, 2. 4. 2014
    —
Aha. Mislis da maknem razmake izmedju broja i minusa da bi trebalo raditi??
Ajd probati cu.

Hvala.

#5:  Autor/ica: hendrix PostPostano: 13:51 sri, 2. 4. 2014
    —
Ne, krivi znak je. Stavi "pravi" minus i radit ce, razmaci nisu bitni.

#6:  Autor/ica: vsegoLokacija: /sbin/init PostPostano: 14:44 sri, 2. 4. 2014
    —
"PDFovskli minus" nije "pravi minus".

Inace, copy/paste je koristan samo da provjerite rade li programi iz skripte, no tako necete puno nauciti. Koliko god djelovalo glupo i bilo dosadno, prepisivanje kodova je daleko korisnije, jer onda primijetite sve one detalje koji obicnim citanjem promaknu. Naravno, jos je korisnije da sami rjesavate, a rjesenja pogledate kad/ako zapnete.

#7:  Autor/ica: ludamath PostPostano: 23:22 sri, 2. 4. 2014
    —
Ja sam zadatak copy/paste-la jer je sličan zadatku koji imam za dz koji mi code blocks ne želi kompajlirati, pa čisto da provjerim radi li compile.

#8:  Autor/ica: pllook PostPostano: 14:16 uto, 29. 4. 2014
    —
imam jedan problemčić.naime,prepišem zadatak iz skripte,kompajliram,upišem u onaj crni prozorčić što je potrebno i onda mi se sve sruši i pojavi se prozor u kojem piše: main.exe has stoped working, a problem caused the program to stop working correctly. windows will close the program and notify you if a solution is available

zna li netko o čemu je riječ?

#9:  Autor/ica: vsegoLokacija: /sbin/init PostPostano: 14:53 uto, 29. 4. 2014
    —
Puno potencijalnih razloga (npr. zaboravljen & ispred neke od ucitavanih varijabli). Koristilo bi da napises tekst zadatka i copy/paste svog koda ("prepisanog").

#10:  Autor/ica: pllook PostPostano: 15:42 uto, 29. 4. 2014
    —
Zad.4.2.2. Napišite program koji učitava broj n iz N te dva niza a i b realnih brojeva duljine n. Program treba ispisati nizove ovako: a0,b0,a1,b1,a2,b2... Za ispis nizova definirajte funkciju koja će kao orgumente primati nizove i duljinu n.

Kod:

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

double *alokacija(int n, char ime)
{
    double *x;
    int i;
    x=(double*)malloc(n*sizeof(double));
    if(x=NULL)
    {
        printf("Nema dovoljno memorije.\n");
        exit(1);
    }
    for(i=0; i<n; i++)
        scanf("%lg", &x[i]);
    return x;
}

void ispis(double* a, double* b, int n)
{
    int i;
    printf(" %g %g", a[0], b[0]);
    for(i=1; i<n; i++)
        printf("%g %g", a[i], b[i]);
    printf("\n");
}
int main()
{
    double *a, *b;
    int n;
    scanf("%d", &n);
    if(n>0)
    {
        a=alokacija(n,'a');
        b=alokacija(n,'b');
        ispis(a,b,n);
        free(a);
        free(b);
    }
    return 0;
}

#11:  Autor/ica: Countess PostPostano: 16:22 uto, 29. 4. 2014
    —
Funkcija alokacija:

Umjesto
Kod:
if ( x = NULL )

stavi
Kod:
if ( x == NULL )

#12:  Autor/ica: pllook PostPostano: 16:31 uto, 29. 4. 2014
    —
jooooj,da. hvala!

#13:  Autor/ica: mdokoLokacija: Heriot-Watt University, Edinburgh PostPostano: 17:07 uto, 29. 4. 2014
    —
pllook (napisa):
jooooj


Jako je korisno reći kompajleru da ispisuje svakakva upozorenja. Vidi što se dogodi prilikom kompajliranja tvog koda s uključenim flagovima za warninge:

Kod:
$ gcc -Wall -Wextra Zad.4.2.2.c
Zad.4.2.2.c: In function 'alokacija':
Zad.4.2.2.c:9:5: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
Zad.4.2.2.c:4:31: warning: unused parameter 'ime' [-Wunused-parameter]


Zadnja promjena: mdoko; 17:09 uto, 29. 4. 2014; ukupno mijenjano 1 put.

#14:  Autor/ica: vsegoLokacija: /sbin/init PostPostano: 17:07 uto, 29. 4. 2014
    —
Postoji dobar trik da vas compiler upozori na te i slicne greske: gcc opcija -Wall ("warnings: all", a ne "Zid" Wink). U Code::Blocks to se upali pod "Settings" > "Compiler and debugger..." > "Enable all compiler warnings (...) [-Wall]".

Programi se i dalje compiliraju, ali onaj ispis pri dnu glavnog prozora ce ispisivati upozorenja vezana uz ceste greske, poput ove gore. Tako ce, za ovaj program, ispisati jedno upozorenje:

Kod:
#include <stdio.h>

int main(void) {
  int x;
  x = 2;
  if (x = 3);
  printf("%d\n", x);
  if ((x = 4));
  printf("%d\n", x);
  return 0;
}


Upozorenje ce reci "<puno ime fajla> 6 warning: suggest parentheses around assignment used as truth value", sto znaci da u liniji 6 predlazu da ju napisemo kako sam ja napisao liniju 8. Drugim rijecima, if (x = 3) javlja upozorenje, a if ((x = 4)) ne, jer se smatra da su duple zagrade signal da smo tu pridruzivanje stavili svjesno.

Takodjer, ako izostavim return, upozorit ce me da nisam definirao povratnu vrijednost non-void funkcije.



Forum@DeGiorgi -> Programiranje 1 i 2


output generated using printer-friendly topic mod. Vremenska zona: GMT + 01:00.

Stranica 1 / 1.

Powered by phpBB © 2001,2002 phpBB Group
Theme created by Vjacheslav Trushkin