[ draganstankela @ 31.10.2014. 13:20 ] @
Radim trenutno neke zadatke iz c programskog jezika, pa bi mi trebala pomoc... Problem su mi formule(mislim na 2.zadatak), odnosno kako to da zapisem, da bi mi program radio ispravno... Ako bi neko mogao da uradi kompletan zadatak, da bih video gde gresim.



1. U redu u samoposluzi nalazi se n kupaca. Vreme opsluživanja od strane kasirke za svakog kupca dato
je nizom t[0..n-1]. Odrediti čekanje svakog kupca.
2. Napisati program koji izračunava vrednost složenog izraza. Na početku programa korisnik zadaje
prirodan broj n i realan broj x.

s=x-x^3/3!+x^5/5!-...+((-1)^n)*(x^(2n+1))/(2n+1)!



Koristio sam zagrade da bi lakse shvatili, sta sve spada u stepen.

Hvala unapred!
[ -toza vampir- @ 27.11.2014. 20:57 ] @
Ima li neko od forumasa da je voljan da mi pogleda jedan kratki programcic u C jeziku koji racuna najmanji zajednicki sadrzilac dva broja.Zadatak
je vrlo jednostavan,kompajler ne prijavljuje gresku,ali kad unesem dva broja nista se ne desi,tj. nista se ne izracuna,pa me zanima sta sam pogresno uradio.
Nadam se da je ovo dobra tema :D
#include <stdio.h>
int main ()
{
int a,b,br1,br2,c,d,e,f;
do
{
printf("Unesi a i b:\n");
scanf("%d%d",&a,&b);

}
while(a<1 || b<1);

if(a>=b)
{
br1=a;
do
{
br1%a==c;
br1%b==d;
br1++;

}
while(c!=0 || d!=0);
printf("NZS je:%d\n",br1);


}
else
{
br2=b;
do
{
br2%a==e;
br2%b==f;
br2++;

}
while(e!=0 || f!=0);
printf("NZS je:%d\n",br2);
}

return 0;
}
[ Odin D. @ 27.11.2014. 22:10 ] @
Ehhh, lakše bi bilo odgovoriti na pitanje "Šta nisam pogrešno uradio?".
Za početak provjeri operatore (npr. ==) i uslove petlji.
[ mica1709 @ 12.05.2015. 06:58 ] @
Potrebna mi je pomoć oko jednog zadatka iz programskog jezika C. Treba napisati program koji iz datog fajla
"ocene.txt" čita i ispsuje podatke o studentima i njihove ocene na ispitu a zatimna osnovu njih treba da odredi
i ispiše studente koji nisu položili (dobili ocenu 5) i studente koji su položili ispit (dobili ocene 6,7,8,9 i 10).
Uspeo sam da učitam i ispišem podatke iz fajla ali ne znam kako dalje. Evo šta sam do sada uradio:


Code:
#include<stdio.h>

#define MAX_IME 20
#define MAX_PREZIME 30
#define MAX_STUDENATA 100

typedef struct studenti
{
    char ime[MAX_IME];
    char prezime[MAX_PREZIME];
    int brojindeksa, ocena;
} Studenti;

Studenti student[MAX_STUDENATA];

int broj_studenata = 0;

int ucitaj_studenta(FILE *f, Studenti *s)
{
    fscanf(f, "%s%s%d%d", s->ime, s->prezime, &(s->brojindeksa), &(s->ocena));
    if(feof(f))
        return 0;
    return 1;
}

void ispisi_studente()
{
    int i;
    for(i = 0; i < broj_studenata; i++)
        printf("%-10s %-15s %-15d %-5d\n", student[i].ime, student[i].prezime, student[i].brojindeksa, student[i].ocena);
}

int main()
{
    FILE *f;
    f = fopen("C:\\ocene.txt", "r");

    if(f == NULL)
    {
        printf("Greska prilikom otvaranja datoteke\n");
        return 1;
    }

    while(ucitaj_studenta(f, &student[broj_studenata]))
        broj_studenata++;

    printf("Ime        Prezime      Broj indeksa     Ocena\n");
    printf("-------------------------------------------------------------\n");

    ispisi_studente();

    fclose(f);

    printf("-------------------------------------------------------------\n");
}


[Ovu poruku je menjao X Files dana 14.05.2015. u 18:31 GMT+1]
[ tripleqqqqq @ 12.05.2015. 14:58 ] @
Samo treba da prodjes kroz niz studenata i pitas koju su ocenu dobili i u zavisnosti od toga ih ispises ili ne.

U tvom kodu sam dodao dve funkcije "polozili_ispis()" i "pali_ispis()" koje rade to.

Imao si gresku i u funkciji ucitaj_studente() jer proveravas da li je kraj fajla sa feof(f) sto nije dobro i nece ucitati sve studente iz fajla, da ne objasnjavam zasto, imas mnogo tema u kojima se govori o tome :)


Code:


#include <stdio.h>

#define MAX_IME 20
#define MAX_PREZIME 30
#define MAX_STUDENATA 100

typedef struct studenti
{
    char ime[MAX_IME];
    char prezime[MAX_PREZIME];
    int brojindeksa, ocena;
} Studenti;

Studenti student[MAX_STUDENATA];
int broj_studenata = 0;

int ucitaj_studenta(FILE *f, Studenti *s)
{
    if(fscanf(f, "%s%s%d%d", s->ime, s->prezime, &(s->brojindeksa), &(s->ocena)) == 4)
        return 1;
    else
        return 0;
}

void ispisi_studente()
{
    int i;
    for(i = 0; i < broj_studenata; i++)
        printf("%-10s %-15s %-15d %-5d\n", student[i].ime, student[i].prezime, student[i].brojindeksa, student[i].ocena);
}

void polozili_ispis() 
{
    int i;
    printf("Polozili su: \n");
    for(i = 0; i < broj_studenata; i++)
        if(student[i].ocena > 5)
            printf("%s %s %d %d\n", student[i].ime, student[i].prezime, student[i].brojindeksa, student[i].ocena);
        
}

void pali_ispis() 
{
    int i;
    printf("\nPali su su: \n");
    for(i = 0; i < broj_studenata; i++)
        if(student[i].ocena < 6)
            printf("%s %s %d %d\n", student[i].ime, student[i].prezime, student[i].brojindeksa, student[i].ocena);
}

int main()
{
    FILE *f;
    f = fopen("ocene.txt", "r");
    
    if(f == NULL)
    {
        printf("Greska prilikom otvaranja datoteke\n");
        return 1;
    }
    
    while(ucitaj_studenta(f, &student[broj_studenata]))
        broj_studenata++;
    
    printf("Ime Prezime Broj indeksa Ocena\n");
    printf("-------------------------------------------------------------\n");
    
    ispisi_studente();
    
    fclose(f);
    
    printf("-------------------------------------------------------------\n");
    polozili_ispis();
    pali_ispis();
}

[ mica1709 @ 12.05.2015. 21:56 ] @
Hvala vam mnogo ste mi pomogli. U međuvremenu sam dodao još izračunavanje prosečne ocene studenata ali mi nikako ne uspeva da ispišem sve studente koji su dobili ocenu veću od prosečne. Pokušao sam ovako ali ne radi.

Code:
void nadprosecna_ocena()
{
    int i;
    double prosecna = 0;
    for(i = 0; i < broj_studenata; i++)
    {
        if(student[i].ocena > prosecna)
        {
            prosecna++;
        }
    }
    printf("%-10s %-15s %-15d %-5d\n", student[i].ime, student[i].prezime, student[i].brojindeksa, student[i].ocena);
}


[Ovu poruku je menjao X Files dana 14.05.2015. u 18:31 GMT+1]
[ mica1709 @ 12.05.2015. 23:27 ] @
Uradio sam ovako i sad radi dobro.

Code:
void nadprosecna_ocena()
{
int i;
double prosecna = 0;
for(i = 0; i < broj_studenata; i++)
{
for(i = 0; i < broj_studenata; i++)
{
if(student[i].ocena > prosecna)
{
printf("Studenti koji imaju ocenu vecu od prosecne: \n\n%-5s %-10s %-5d %-5d\n", student[i].ime, student[i].prezime, student[i].brojindeksa, student[i].ocena);
}
prosecna+=student[i].ocena;
prosecna = prosecna / i ;
}
}
}


[Ovu poruku je menjao X Files dana 14.05.2015. u 18:32 GMT+1]
[ mica1709 @ 14.05.2015. 08:05 ] @
Čitajući ovu temu naišao sam na ovaj zadatak na početku ove stranice. Isti zadatak sa samo malo promenjenim tekstom sam i ja trebao da uradim pa nisam uspeo. Može li neko da mi da ideju kako da ga rešim?

U redu u samoposluzi se nalazi N kupaca. Vreme opsluživanja od strane prodavačice za svakog kupca je dato nizom t[0 … n-1].
Odrediti vreme čekanja svakog kupca i rezultat oštampati na ekran. Primer. Drugi kupac ce da ceka samo prvog, treci kupac ceka prvog I drugog, itd…
[ mica1709 @ 15.05.2015. 12:44 ] @
Pokušao sam sam ali negde sigurno grešim. Evo šta sam uradio ali vremena koja mi izbacuje nisu dobra.

Code:
#include <stdio.h>

int main()
{
    int suma, i, N, t[5];
    suma = 0;
    printf("Unesite broj kupaca: ");
    scanf("%d",&N);
    for(i = 1; i <= N; i++)
    {
        suma += t[i];
        printf("%d kupac ceka %d.\n", i, suma);
    }
}




[Ovu poruku je menjao X Files dana 26.05.2015. u 20:56 GMT+1]
[ djoka_l @ 15.05.2015. 13:19 ] @
Citat:
suma += t;


Sumi dodaješ VREDNOST pokazivača t umesto vremena koja su t[0], t[1], ... , t[4]

Osim toga, nisi dodelio vrednosti vremena t[0]...t[4]
Osim toga, prvi kupac čeka 0, a ne t[0] vremena.
[ mica1709 @ 16.05.2015. 12:29 ] @
Pokušavam ali mi ne uspeva. Kako bi to što ste napisali izgledalo napisano u kodu?
[ mica1709 @ 26.05.2015. 11:17 ] @
Uspeo sam da rešim. Evo koda za one kojima će možda trebati:

Code:
#include <stdio.h>

int main()
{
    int suma, i, N, t[50];
    suma = 0;
    printf("Unesite broj kupaca:");
    scanf("%d",&N);
    for(i = 1; i <= N; i++)
    {
        printf("Unesite vreme opsluzivanja kupca %d:", i);
        scanf("%d", &t[i]);
        suma += t[i];
        printf("\n%d. kupac ceka %d minuta.\n\n", i, suma);
    }
}


[Ovu poruku je menjao X Files dana 26.05.2015. u 20:56 GMT+1]
[ mica1709 @ 14.07.2015. 12:24 ] @
Treba mi pomoć oko sledećeg zadatka u C programskom jeziku:
Napisati program kojim se čita datoteka: znak po znak; i odredjuje broj pojavljivanja malih slova u datoteci bez w, x, y.
Problem je što ne znam kako da eliminišem w, x i y da ih ne broji. Ovako kako sam napisao broji sva mala slova.

#include <stdio.h>

int main ()
{
FILE * f;
char c;
int malaslova = 0;

f = fopen ("H:\\fajl.txt", "r");

if (f == NULL) {
printf("Greska prilikom otvaranja fajla!");
}
else
{
do {
c = fgetc(f);
if ((c >= 'a') && (c <= 'z')) {
malaslova++;
}
} while (c != EOF);

fclose (f);
printf("Broj pojavljivanja malih slova u datoteci: %d \n", malaslova);
}
return 0;
}


[Ovu poruku je menjao mica1709 dana 14.07.2015. u 13:36 GMT+1]
[ mrIronMan @ 14.07.2015. 12:55 ] @
u if od 'a' do 'z' stavis dodatne uslove && c!='w' && c!='x' && c!='y"
[ mica1709 @ 14.07.2015. 15:55 ] @
Hvala puno. Znao sam šta treba da se uradi ali nisam znao kako.
[ msmnikolakrga @ 30.07.2015. 13:23 ] @
Potrebna pomoć oko sledećih zadataka C++:

- Napisati program koji za uneti broj n (1 ≤ n ≤ 50) učitava niz od n realnih brojeva. Naći maksimalni element niza, a onda svako njegovo pojavljivanje u nizu zameniti k puta većim brojem, gde se k unosi sa ulaza.
- Napisati program koji će učitati proizvoljan tekstualni fajl i dve proizvoljne reči sa tastature. Program treba da u tekstu iz fajla zameni prvu reč sa drugom učitanom. Rezultat snimiti u datoteku data.txt.
- Napisati program koji će učitati proizvoljan tekstualni fajl i odrediti u kojem redu se nalazi najviše slova. Rezultat (jedan red) ispisati u data.txt fajl.


[ jablan @ 30.07.2015. 16:17 ] @
Kakva pomoć je potrebna?
[ msmnikolakrga @ 31.07.2015. 13:02 ] @
Pomoć u smislu ideje ili saveta kako da krenem sa pisanjem koda?
Unapred zahvalan