C++ Pomoc

poruka: 34
|
čitano: 4.361
|
moderatori: XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
14 godina
neaktivan
offline
C++ Pomoc

Zahvaljujem se jos jednom za pomoc oko zadatka .... Tekst zadatka cu postaviti opet nakon zavrsenog posla u skoli, da i drugima posluzi kao primjer...Izvinjavam se svima zato sto sam trenutno sklonio tekst u roku 2 dana je nazad..Pozdrav

Poruka je uređivana zadnji put uto 18.10.2011 17:12 (snakeccc).
 
0 0 hvala 0
14 godina
offline
C++ Pomoc

e jebiga bre...

griješiti je ljudski al je osjećaj božanski
 
1 0 hvala 0
14 godina
neaktivan
offline
C++ Pomoc
dva dana pokusavam sa ovim cackati i neide ... za izluditi je uff
 
0 0 hvala 0
15 godina
neaktivan
offline
C++ Pomoc

knjigu u ruke i na posao

Svatko želi biti netko; nitko ne želi raditi na tome.
Moj PC  
1 0 hvala 0
14 godina
neaktivan
offline
C++ Pomoc
ima i toga u jednu ruku ali kada dodje 5 do 12 onda ni knjiga ne pomaze samo neko cudo ...
 
0 0 hvala 0
14 godina
neaktivan
offline
C++ Pomoc

Ja sam počeo učit c++ ali ne mogu ti sa ovime pomoći jer još nisam došao do te razine.

 

Također moj savjet ti je da uzmeš knjigu u ruku i lagano kreni (tako ćeš i naučiti) a ako ti programiranje neće trebati onda pitaj nekoga iz razreda ili nekog poznanika da ti rješi jer mislim da ćeš ovdje jako teško dobiti rješenje iako postoji par duša koje bi ti mogle napisati kod.

These are dark time, there is no denying. Our world has prehaps faced no greater threat than it does today!
Moj PC  
1 0 hvala 0
16 godina
offline
C++ Pomoc

To su osnove programiranja. Ništa teško, samo treba upaliti mozak i dati si truda.

Trebaš znati čitati txt datoteku i nekoliko petlji i ifova, koji ispis i to je to.

 
1 0 hvala 0
15 godina
neaktivan
offline
Re: C++ Pomoc

Koliko ti je hitno? :D

My computer once beat me at chess, but we got even after a round of boxing.
15 godina
neaktivan
offline
Re: C++ Pomoc

Drugi zadatak (kraci je pa ide prvi):

 

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

#define DULJINA_LINIJE 200

int main()
{
    char ime[256], rijec[32], linija[DULJINA_LINIJE];
    int l=1, n, duljina_l, duljina_r;
    FILE *fh;
   
    printf("Unesi ime datoteke: ");
    gets(ime);
   
    fh=fopen(ime, "r");
    if (!fh)
    {
       printf("Datoteka \"%s\" ne postoji.\n", ime);
       system("pause");
       return 1;
    }
   
    do
    {
      printf("Unesi trazenu rijec: ");
      gets(rijec);
      if (!strlen(rijec))
         printf("Rijec ne moze biti prazna!\n");
    }
    while(!strlen(rijec));
   
    duljina_r=strlen(rijec);
   
    printf("Rijec \"%s\" je pronadena u slijedecim linijama:\n", rijec);
   
    while (!feof(fh))
    {
          memset(linija, 0, DULJINA_LINIJE);
          fgets(linija, DULJINA_LINIJE, fh);
          duljina_l=strlen(linija);
         
          for (n=0; n<duljina_l-duljina_r; n++)
          {
              if (memcmp(rijec, linija+n, duljina_r)==0)
                 printf("%d\n", l);
          }
          l++;        
    }

    fclose(fh);
    system("pause");
       
    return 0;
}

My computer once beat me at chess, but we got even after a round of boxing.
15 godina
neaktivan
offline
C++ Pomoc

E bogami, ovaj je dulji. I za razliku od prethodnog, ovdje mi je dosta toga malo nedoreceno u definiciji zadatka, pa sam pretpostavio sto se trazi :D Zadatak je, iako dugacak za pojmove ovog podforuma zapravo dosta trivijalan, malo sam se nagnjavio u funkciji koja racuna interval (do te mjere da je cak i debugger vidio akcije), ali to pripisujem umoru.

 

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

#define GODINA 365

int godina[GODINA];

void uplata(char *komanda)
{
     int najveca_uplata=0, n;
     for (n=0; n<GODINA; n++)
         if (godina[n]>najveca_uplata)
            najveca_uplata=godina[n];
    
     printf("Najveca uplata je %d\n", najveca_uplata);
    
     return;
}

void isplata(char *komanda)
{
     int najveca_isplata=0, n;
     for (n=0; n<GODINA; n++)
         if (godina[n]<najveca_isplata)
            najveca_isplata=godina[n];
    
     printf("Najveca isplata je %d\n", najveca_isplata*-1);
     return;
}

void pozitivan(char *komanda)
{
     int n, interval=0, trenutni_interval=-1, najdulji_interval=0;
    
     for (n=0; n<GODINA; n++)
     {
         if (godina[n]<0)
         {
            if (trenutni_interval!=-1)           
                if (n-trenutni_interval>najdulji_interval)
                   najdulji_interval=n-trenutni_interval;
               
            trenutni_interval=-1;
         }
         else
             if (trenutni_interval==-1)
                trenutni_interval=n;
     }
     if (godina[GODINA-1]>0)
         if (n-trenutni_interval>najdulji_interval)
            najdulji_interval=n-trenutni_interval;
    
     printf("Najdulji interval kada je stanje bilo pozitivno je %d dana.\n", najdulji_interval);
     return;
}

void veci(char *komanda)
{
     char broj[11];
     int n=3;
     int Broj=0;
    
     while (!isdigit(komanda[n]))
     {
           if (!komanda[n])
           {
              printf("Parametar nije naveden.\n");
              return;               
           }
           n++;
     }
    
     Broj=atoi(komanda+n);
     printf("Dani kada je uplaceno vise od %d:\n", Broj);
    
     for (n=0; n<GODINA; n++)
     {
         if (godina[n]>Broj)
            printf("Dan: %d. Iznos: %d\n", n+1, godina[n]);
     }
    
     return;
}

void procitaj()
{
     FILE *fh;
     memset(godina, 0, sizeof(int)*GODINA);
     int redni_broj, stanje;
    
     fh=fopen("promet.txt", "r");
     if (!fh)
     {
        printf("Datoteka \"promet.txt\" ne postoji!\n");
        exit(1);
        return;
     }
    
     while (!feof(fh))
     {
           fscanf(fh, "%d %d", &redni_broj, &stanje);
           if (redni_broj<1 || redni_broj>GODINA)
           {
              printf("Nevazeci unos u datoteci!\n");
              fclose(fh);
              exit(1);                
           }
           godina[redni_broj-1]=stanje;
     }
    
     fclose(fh);
     return;    
}

int main()
{
    int izvrsi=1, n;
    char komanda[50];
   
    procitaj();
   
    while (izvrsi)
    {
          printf("Unesi komandu\n[uplata] [isplata] [pozitivan] [veci] [0]\n");
          gets(komanda);
         
          for (n=0; n<strlen(komanda); n++)
              komanda[n]=tolower(komanda[n]);
         
          if (strcmp(komanda, "uplata")==0)
             uplata(komanda);

          else if (strcmp(komanda, "isplata")==0)
                  isplata(komanda);

          else if (strcmp(komanda, "pozitivan")==0)
                  pozitivan(komanda);

          else if (memcmp(komanda, "veci", 4)==0)
                  veci(komanda);

          else if (strcmp(komanda, "0")==0)
                  izvrsi=0;

          else
              printf("Nepoznata komanda.\n");
         
          printf("\n");
    }
   
    return 0;
}

E da, nemoj ga zaboraviti "konvertirati" u ekavicu, da se ne bi skuzilo da nije tvoja umotovorina ^^

 

Srećno xD

 

EDIT: trostruki post, valjda ce mi modovi progledati kroz prste :) ups...

My computer once beat me at chess, but we got even after a round of boxing.
Poruka je uređivana zadnji put uto 18.10.2011 0:24 (rustweaver).
 
1 0 hvala 2
14 godina
neaktivan
offline
C++ Pomoc
Pa covjece car si.... majke mi.... Hvalaa punooooo :))))
Snake_x
 
0 0 hvala 0
14 godina
neaktivan
offline
C++ Pomoc

Rješavanje zadataka ljudima koji su tek jedan dan na forumu i nisu pokazali nikakav trud niti zanimanje da sami pokušaju je najobičnije bacanje vremena. Takvi se ne trude nešto naučiti već samo naći nekoga da za njih rješi zadaću ili seminar.

Moj PC  
0 0 hvala 0
15 godina
neaktivan
offline
Re: C++ Pomoc

Vjerojatno, ali rjesavao sam zadatke i puno nezahvalnijima, a i trebala mi je distrakcija da se prestanem vlastitim kodom baviti, glava me vec boli od njega :D

My computer once beat me at chess, but we got even after a round of boxing.
14 godina
neaktivan
offline
C++ Pomoc
Mene na ovaj forum nije privuklo to sto mi treba pomoc...Igrom slucaja se desilo to da kada nije bilo rijesenja za moj problem oko zadataka objavim post ovdje nebi li neko nasao vremena da ako nista kratko i jasno objasni kako i sta trebam....To neznaci da necu i nemam zelju za ucenjem i napredovanjem.... Mnogima je bar jednom u zivotu sto se necega tice doslo 5 do 12.... *Rustweaver* hvala od srca ...
Snake_x
 
0 0 hvala 0
17 godina
offline
C++ Pomoc

Zar ne bi to bilo jednostavnije napraviti da program sprema u text datoteku samo salda, gdje je prva stavka početni saldo.

Dakle, ako imamo datoteku sa saldima:

500

200

350

-25

750

Dalje računamo po redu:

1. najveća uplata - (u spremljenom int nizu kroz petlju provučemo niz i oduzimamo sljedeći-prethodni, a najveća uplata je najveća pozitivna vrijednost)

2. najveća isplata - (postupak kao za najveću uplatu, a najveća isplata je najveća negativna vrijednost)

3. najdulji interval bez minusa na računu - (proučemo niz kroz petlju i brojačem odredimo interval)

 

Ali, toliko od mene, neću napisati ni liniju koda dok ne vidim pokušaj, u pravu je profa @Tracer{#}

 

A dobro, kad već kažeš da želiš učiti, evo ti prilika, naveo si da hoćeš zadatak u C++, pa ga onda i napiši u C++, dakle u C++ ovo bi se najbolje moglo napisati koristeći fstream objekt za čitanje iz datoteke i vector container za spremanje učitanih vrijednosti.

Ovo su natuknice:

 

#include<iostream>
#include<vector>
#include<fstream>
using namespace std;

int main()
{
    ifstream unos; // instanciramo objekt fstream za čitanje
    vector<int> saldo;    // deklariramo vector container tipa int
    int broj;

    unos.open("saldo.txt");      // otvaramo datoteku za čitanje
    while(!unos.eof())      // čitamo iz datoteke dok ne dođemo do kraja datoteke
    {
       unos >> broj;
       saldo.push_back(int(broj));       // smještamo int vrijednosti u vector saldo koje smo pročitali iz datoteke
    }
    for(int i=0; i<saldo.size(); i++)
    {
       cout<< saldo.at(i) << endl;        // da bi se ujerili da li smo dobro napravili ispisujemo vector saldo
    }
    unos.close();   // zatvaramo fstream za našu datoteku
    return 0;
}

 

Ovo ti je link gdje ove stvari možeš naučiti, pa navali sokole.

http://www.cplusplus.com/doc/tutorial/

 

 

 

 

 

 

Poruka je uređivana zadnji put uto 18.10.2011 14:33 (Floki).
 
2 0 hvala 0
15 godina
neaktivan
offline
Re: C++ Pomoc
Floki kaže...

Zar ne bi to bilo jednostavnije napraviti da program sprema u text datoteku samo salda, gdje je prva stavka početni saldo.

Naravno da bi, ali zadatak nije tako glasio.

My computer once beat me at chess, but we got even after a round of boxing.
17 godina
offline
C++ Pomoc

čini mi se da su tražili ispis najveće uplate, najveće isplate i intervala bez minusa, ako se to tražilo, dosta su salda.

 
0 0 hvala 0
15 godina
neaktivan
offline
Re: C++ Pomoc

Da, ali je bilo navedeno da se u datoteci proracun.txt nalazi i redni broj dana u godini i saldo koji se dogodio tog dana.

To bi bilo otprilike u ovom formatu:

1 -324

2 567

6 -15

 

Pretpostavljam da je redni broj dana u godini zapisan bas iz razloga sto ne moraju biti navedeni svi dani u godini. Ti zadatci uvijek pola toga ostave nedorecenim pa se moras posavjetovati sa kristalnom kuglom da bi shvatio sto profesor u biti zeli. Sto sam ja napravio, procitao cijelu datoteku u polje koje ima clanova koliko i dana u godini, svaki saldo stavio na odgovarajuce mjesto u polju, te onda vadio iz tog polja ono sto se trazi.

 

Bilo bi puno jednostavnije da je u zadatku pisalo, imas input takav i takav, a moras dobiti takve i takve outpute.

My computer once beat me at chess, but we got even after a round of boxing.
Poruka je uređivana zadnji put uto 18.10.2011 14:41 (rustweaver).
17 godina
offline
C++ Pomoc

E, onda munjenog zadatka, pari biblijski , "U one dane 50.-tog dana od toga i toga . . ."

Dakle, traže nešto poput ovog: 150.-tog dana u godini završi plus na računu, time prođe doba "debelih krava" koje započe 21.-og dana Godine Gospodnje{#}

Doba debelih krava dakle trajaše 129 dana, Amen.

E da je ovo staviti profi u cout<< ""; {#}{#}

Poruka je uređivana zadnji put uto 18.10.2011 15:33 (Floki).
 
1 0 hvala 0
16 godina
neaktivan
offline
C++ Pomoc

Ljudi, moze pomoc? 

treba program za racunanje kvadrata i korijena.. kvadrat bez problema, ali me korijen muci

 

#include <stdio.h>

#include <math.h>

void main()

{

int a, b, c;

printf("Unesite broj a\n");

scanf("%d", &a);

printf("a = %d\n", a);

b = a * a;

printf("Kvadrat broja a je %d.\n", b);

c = sqrt (a);

printf("Korijen broja a je %d.\n", c);

 

bez boldanog dijela radi, sa boldanim dijelom javlja gresku, kako sad napravit korijen?

Ste videli lepote, ko sredi noci Zapiha veter samote Rosa, reke in morja R.I.P. EnlightenedPhoenix 24.6.2011.
 
0 0 hvala 0
14 godina
neaktivan
offline
Re: C++ Pomoc

Zato što korijen toga broja nije integer nego float!
Stavi:
printf("Korijen broja a je %f.\n", c);

Programming is understanding. – Kristen Nygaard
16 godina
neaktivan
offline
Re: C++ Pomoc
royalhero kaže...

Zato što korijen toga broja nije integer nego float!
Stavi:
printf("Korijen broja a je %f.\n", c);

skuzio, hvala :D

Ste videli lepote, ko sredi noci Zapiha veter samote Rosa, reke in morja R.I.P. EnlightenedPhoenix 24.6.2011.
Poruka je uređivana zadnji put ned 13.11.2011 17:24 (Mitsuoka).
14 godina
neaktivan
offline
Re: C++ Pomoc

#include<stdio.h>#include<math.h>int main(){float a;scanf("%f",&a);printf("%.2f", sqrt(a));return 0;}


Ovo kod mene radi, samo zaokruži decimale.

Programming is understanding. – Kristen Nygaard
Poruka je uređivana zadnji put ned 13.11.2011 17:35 (royalhero).
16 godina
neaktivan
offline
C++ Pomoc

Mitsuoka, 

umjesto 

void main()

{

}

 

piši

int main()

 {

  return 0;

 }

 

Takav je standard. 90% kompilera će ti dati warnning. I još nešto, slobodno stavi printf("%g",sqrt(a)); 

Bolji je output. 

Nista nije sveto sve je bruto i neto, sve je zabava!
Moj PC  
0 0 hvala 0
14 godina
neaktivan
offline
Re: C++ Pomoc
Shody_1994 kaže...
Takav je standard. 90% kompilera će ti dati warnning.

Normalno da će dati, kakva je logika da se main funkcija deklariše kao void?
Int je cjeli broj, a vraćanjem 0 se OS-u govori da je program uspješno završe, a drugi broj naznačava run-time error.

Programming is understanding. – Kristen Nygaard
16 godina
neaktivan
offline
Re: C++ Pomoc

radim onako kako radimo na faksu, tako da necu mijenjat nista, ionako sam sva 3 programa uspio napravit i pokrenit... tako da e

Ste videli lepote, ko sredi noci Zapiha veter samote Rosa, reke in morja R.I.P. EnlightenedPhoenix 24.6.2011.
14 godina
neaktivan
offline
Re: C++ Pomoc
Mitsuoka kaže...

radim onako kako radimo na faksu, tako da necu mijenjat nista, ionako sam sva 3 programa uspio napravit i pokrenit... tako da e

Džaba, reci profesoru da je to nepravilno, ti koristi kako smo ti mi rekli, jer mi nikad negriješimo{#}.

Programming is understanding. – Kristen Nygaard
16 godina
neaktivan
offline
C++ Pomoc

Ma, ok je, samo profesori rade krivo, pa i vi.

Evo pa gledaj . 

Nista nije sveto sve je bruto i neto, sve je zabava!
Moj PC  
0 0 hvala 0
14 godina
neaktivan
offline
Re: C++ Pomoc

Ta tema je završila u Bugu desetljeća.
Inače, kao što su i tamo rekli, void main je nepravilno, kao i iostream.h u C++.

Programming is understanding. – Kristen Nygaard
16 godina
neaktivan
offline
Re: C++ Pomoc
Shody_1994 kaže...

Ma, ok je, samo profesori rade krivo, pa i vi.

Evo pa gledaj . 

da samo sto je to srednja, a ovo faks....

ja se vodim teorijom da ima razloga zasto je ovako, a i u skriptama je tako... 

https://elearning.fesb.hr/file.php/176/Skripta_za_laboratorijske_vjezbe.pdf tako da ja radim po skriptama... (ne znam mozete li otvorit bez logina)

sve radi meni, i profesorima kad im predam domaci, ionako mi je to sporedni predmet.

Ste videli lepote, ko sredi noci Zapiha veter samote Rosa, reke in morja R.I.P. EnlightenedPhoenix 24.6.2011.
Nova poruka
E-mail:
Lozinka:
 
vrh stranice