Programiranje u C++-u - pitanja i odgovori izdvojena tema

poruka: 7.285
|
čitano: 1.711.940
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
17 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
wall kaže...

Zbog toga sto se '.' po ascii tablici nalazi prije slova 'A' isto tako i '+', a '_' i '[' nalaze se između 'A' i 'z'.

Znaci skuzio si sve, bravo. Sad kad dobis bilo kakav slican zadatak znat ces ga bez problema rijesiti ;)

Perhaps today IS a good day to die. PREPARE FOR RAMMING SPEED!
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Uradio sam ovaj zadatak i nije mi bas jasan ovaj dio koda?

broj=broj/10;

 

 

#include <iostream>
using namespace std;

void main()
{
    int broj=0;
    int suma=0;
   

    cout<<"Unesi broj: "<<endl;
    cin>>broj;

    while(broj>0){
       int ostatak=broj%10;
       suma=suma+ostatak;
      broj=broj/10;
    }
    cout<<"Zbroj znamenaka broja "<<broj<<" je "<<suma<<endl;   
}

 
0 0 hvala 0
17 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
wall kaže...

Uradio sam ovaj zadatak i nije mi bas jasan ovaj dio koda?

broj=broj/10;

...

Uzmi na primjer broj 123. Podijeli ga s 10, sto ces dobiti? 12 (imaj na umu da je to inace 12.3, ali u C/C++-u se dijeljenje integera radi kao cjelobrojno, znaci ono poslije tocke se odbacuje). Sad 12 podijeli s 10. Dobijes 1. Naposlijetku 1 podijeli s 10, to je 0. Primjeti, imao si broj 123, pa 12, pa 1 i zatim 0 sto baca iz petlje. Koliko broj 123 ima znamenaka, a koliko puta se petlja odvrtjela?

 

EDIT: Ova zadnja cout linija ti nece raditi kako si zamislio. (hint: vidi varijablu broj)

Perhaps today IS a good day to die. PREPARE FOR RAMMING SPEED!
Poruka je uređivana zadnji put ned 26.5.2013 14:32 (1domagoj1).
13 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
wall kaže...

 

      broj=broj/10;

Ako si novi u programiranju, ovo te možda zbunjuje pošto je nešto ovako nemoguće u matematice, ako bi gledali matematički broj se prebaci ovamo pa bi bilo broj/broj=10 => 1=10, znači nemoguće, a u programiranju se samo vrijednost broj/10 kopira u varijablu broj i tako sve se izvršava while petlja dok ne dođe do nule, faktički svakim izvršavanjem se smanjuje samo broj cifri.

 

int broj=10;

broj=broj+2;

cout << broj; //na ekranu ce se ispisati 12

It's not how good you are, it's how good you want to be.
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
1domagoj1 kaže...
wall kaže...

Uradio sam ovaj zadatak i nije mi bas jasan ovaj dio koda?

broj=broj/10;

...

Uzmi na primjer broj 123. Podijeli ga s 10, sto ces dobiti? 12 (imaj na umu da je to inace 12.3, ali u C/C++-u se dijeljenje integera radi kao cjelobrojno, znaci ono poslije tocke se odbacuje). Sad 12 podijeli s 10. Dobijes 1. Naposlijetku 1 podijeli s 10, to je 0. Primjeti, imao si broj 123, pa 12, pa 1 i zatim 0 sto baca iz petlje. Koliko broj 123 ima znamenaka, a koliko puta se petlja odvrtjela?

 

EDIT: Ova zadnja cout linija ti nece raditi kako si zamislio. (hint: vidi varijablu broj)

Nije mi jasno zasto ne radi ovaj zadnji cout, pa ako moze pomoc?

17 godina
offline
Programiranje u C++-u - pitanja i odgovori

Zato što si u while petlji broj sveo na nulu u liniji

broj = broj/10;

 

Kod svakog prolaza while petlje varijabli broj si dodavao vrijednost broj/10;

 

Kad izađeš iz petlje varijabla broj ima vrijednost 0.

Nitko nije rekao da ti taj cout ne radi, nego da za varijablu broj ispisuje 0.

Poruka je uređivana zadnji put ned 26.5.2013 20:54 (Floki).
 
0 0 hvala 0
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Floki kaže...

Zato što si u while petlji broj sveo na nulu u liniji

broj = broj/10;

 

Kod svakog prolaza while petlje varijabli broj si dodavao vrijednost broj/10;

 

Kad izađeš iz petlje varijabla broj ima vrijednost 0.

Nitko nije rekao da ti taj cout ne radi, nego da za varijablu broj ispisuje 0.

Pa kako cu napisat da mi pravilno radi?

17 godina
offline
Programiranje u C++-u - pitanja i odgovori

Uvedi pomoćnu varijablu kojoj ćeš prdružiti varijablu broj, nju "uništi" u while petlji, a varjablu broj na kraju ispiši.

 
1 0 hvala 1
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Mozda ovdje mozes da pronedjes neko rjesenje:http://www.znanje.org/knjige/computer/cpp/n/081CPP/081cpp.htm

salkic
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Nije mi bas jasna razlika između % (modul) i / (dijeljenje), pa moze li objašnjenje na ovom primejru?

 

npr.

while(broj>0)
    {
       int ostatak=broj%10;
       suma=suma+ostatak;
       broj=broj/10;
    }

 
0 0 hvala 0
15 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
wall kaže...

Nije mi bas jasna razlika između % (modul) i / (dijeljenje), pa moze li objašnjenje na ovom primejru?

 

npr.

while(broj>0)
      {
            int ostatak=broj%10;
            suma=suma+ostatak;
            broj=broj/10;
      }

  Pogledaj ovdje:

http://www.bug.hr/forum/topic/programiranje/programiranje-c-pitanja-odgovori/98845.aspx?page=139&jumpto=3631494&sort=asc&view=flat

15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
wall kaže...

Nije mi bas jasna razlika između % (modul) i / (dijeljenje), pa moze li objašnjenje na ovom primejru?

 

npr.

while(broj>0)
    {
       int ostatak=broj%10;
       suma=suma+ostatak;
       broj=broj/10;
    }

modul je operacija kojom računaš ostatak pri cjelobrojnom dijeljenju

npr. 10%3 = 1

zato što je 10/3 = 3 i ostatak 1

 

dijeljenje valjda ne moram objašnjavati, samo pazi kada radiš cjelobrojno dijeljenje onda se rezultat zaokružuje prema nuli

0xBADC0DE
17 godina
offline
Programiranje u C++-u - pitanja i odgovori

1. cjelobrojno djeljenje

 

9 / 4 = 2

 

2. modulo

 

9 % 4 = 1

 

Kad podijeliš 9 i 4, to je 2, a ostatak je 1

Modulo je ostatak cjelobrojnog dijeljenja.

 
2 0 hvala 0
12 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Trebao bih pomoć s jednim zadatkom. Ako mi može netko reći gdje je greška.

 

Na ulazu se ucitavaju 2 niza od po 10 elemenata. Formirati niz C ciji ce elementi biti manji od nizova A i B.


          npr.
   A(5, 4, 8, -1)
   B(3, 1, 9, 5)
                
   C(3, 1, 8, -1)

  Evo ovako sam ja uradio, ali nece da mi programira

#include<iostream>
 using namespace std.
int main()
{
   int i,A[10],B[10],C[10]
   for(i=0; i<10; i++)
    cin>>A[i]>>B[i];
   for(i=0; i<10; i++)
    {
      if (A[i]<B[i])
           C[i]=A[i];
      else if (B[i]<A[i]
       C[i]=B[i];
      else
       C[i]=A[i];
      cout<<"unesite nizove"<<A[10]<<"i"<<B[10]<<"i ispisati niz"<<C[10]<<endl;
     }
   return 0;
}                

 
0 0 hvala 0
16 godina
odjavljen
offline
Programiranje u C++-u - pitanja i odgovori

Zašto ovo ne radi kako spada?

 

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

int main()
{
    double x1,y1,slobodni1,x2,y2,slobodni2;
    float m, n;

    printf("Unesite vrijednosti prve jednadzbe");
    printf("\nUnesite prvu varijablu: ");
    scanf("%d",&x1);
    printf("\nUnesite drugu varijablu: ");
    scanf("%d",&y1);
    printf("\nUnesite trecu varijablu: ");
    scanf("%d",&slobodni1);

    printf("Unesite vrijednosti druge jednadzbe");
    printf("\nUnesite prvu varijablu: ");
    scanf("%d",&x2);
    printf("\nUnesite drugu varijablu: ");
    scanf("%d",&y2);
    printf("\nUnesite trecu varijablu: ");
    scanf("%d",&slobodni2);


if(x1 * y2 - x2 - y1 != 0)
{
    printf("Nema rjesenja");
}
else
{
    m = (slobodni1 * y2 - slobodni2 * y1) / (x1 * y2 - x2 * y1);
    n = (x1 * slobodni2 - x2*slobodni1) / (x1 * y2 - x2 * y1);

    printf("Rjesenja jedandzbe: %f, %f", m, n);

    return 0;
}
}

 

P.S. Nije za mene, pitam za frenda. Riječ je o rješavanju sustava sa 2 nepoznanice...

http://nighthawk-software.blogspot.com/
Moj PC  
0 0 hvala 0
14 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Ovako imam za skolu moram napravit u c++ windows form aplikaciji, program se radi o ohmovom zakonu (U=I*R, I=U/R, R=U/I) te 3 razlicite operacije moraju se izvoditi preko funkcija, a odabir svakog izracuna mora bit preko switch casea, molimvas nekog za pomoc nikako nemogu iskombinirat sve to skupa, profesor i ne pokazuje bas najbolje odnosno nista ne pokazuje ono sto znam sam sam naucio...

hvala :)

 
0 0 hvala 0
16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Sum_of_all_fears kaže...

Zašto ovo ne radi kako spada?

 

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

int main()
{
    double x1,y1,slobodni1,x2,y2,slobodni2;
    float m, n;

    printf("Unesite vrijednosti prve jednadzbe");
    printf("\nUnesite prvu varijablu: ");
    scanf("%d",&x1);
    printf("\nUnesite drugu varijablu: ");
    scanf("%d",&y1);
    printf("\nUnesite trecu varijablu: ");
    scanf("%d",&slobodni1);

    printf("Unesite vrijednosti druge jednadzbe");
    printf("\nUnesite prvu varijablu: ");
    scanf("%d",&x2);
    printf("\nUnesite drugu varijablu: ");
    scanf("%d",&y2);
    printf("\nUnesite trecu varijablu: ");
    scanf("%d",&slobodni2);


if(x1 * y2 - x2 - y1 != 0)
{
    printf("Nema rjesenja");
}
else
{
    m = (slobodni1 * y2 - slobodni2 * y1) / (x1 * y2 - x2 * y1);
    n = (x1 * slobodni2 - x2*slobodni1) / (x1 * y2 - x2 * y1);

    printf("Rjesenja jedandzbe: %f, %f", m, n);

    return 0;
}
}

 

P.S. Nije za mene, pitam za frenda. Riječ je o rješavanju sustava sa 2 nepoznanice...

 

 

Da ti iskreno velim , nisam proučavao code ali letimično ga snimeći možda ti sljedeće može pomoći.

Inače , takve stvari idu preko matrica ali sam pobornik da treba izmišljati toplu vodu svako malo ako je

čovjek početnik jer se u tom procesu više nauči sam na svojim greškama nego kroz suhoparno čitanje

dobro uvriježenih procedura rješavanja pojedinih problema.

 

/* imas dolje komparaciju double-a krivu
kod njih nema pouzdanih rezultata kao kod
int-a uint-a , varijacija sa short-ovima
znaci  int == int -> je OK ali double == double
ne bi islo , nize je samo varijacija na temu s != */
 
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
//#include <conio.h>
 
 
/*http://www.parashift.com/c++-faq/floating-point-arith.html
malo vidjeti link , kratkoi jasno zasto float , double nisu 100%
pouzdani u nekim operacijama*/
inline bool isEqual(double x, double y)
{
  const double epsilon = 1e-5 /* some small number such as 1e-5 */;
  return abs(x - y) <= epsilon * abs(x);
  // see Knuth section 4.2.2 pages 217-218
}
 
 
int main()
{
    double x1,y1,slobodni1,x2,y2,slobodni2;
    float m, n;
 
    printf("Unesite vrijednosti prve jednadzbe");
    printf("\nUnesite prvu varijablu: ");
    scanf("%d",&x1);
    printf("\nUnesite drugu varijablu: ");
    scanf("%d",&y1);
    printf("\nUnesite trecu varijablu: ");
    scanf("%d",&slobodni1);
 
    printf("Unesite vrijednosti druge jednadzbe");
    printf("\nUnesite prvu varijablu: ");
    scanf("%d",&x2);
    printf("\nUnesite drugu varijablu: ");
    scanf("%d",&y2);
    printf("\nUnesite trecu varijablu: ");
    scanf("%d",&slobodni2);
 
 
/*nisam proucavao ali mi je sumnjivo i x2 - y1
mozda tu treba x2 * y1 ??? */
//if(x1 * y2 - x2 * /* - ? */ y1 != 0) 
/*skini gore komentar pa probaj recimo
s vrijednostima x1 y1 x2 y2 -> 2 2 2 2 -> bit će jasnije */
 
if( !isEqual( (x1 * y2 - x2 * /* - ? */  y1) , 0) )
{
    printf("Nema rjesenja");
}
else
{
    m = (slobodni1 * y2 - slobodni2 * y1) / (x1 * y2 - x2 * y1);
    n = (x1 * slobodni2 - x2*slobodni1) / (x1 * y2 - x2 * y1);
 
    printf("Rjesenja jedandzbe: %f, %f", m, n);
 
    return 0;
}
}

http:/https://play.google.com/store/apps/details?id=org.kde.necessitas.example.SMASHHH
Poruka je uređivana zadnji put pon 27.5.2013 19:27 (nik_02).
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
KrcoXp kaže...

Ovako imam za skolu moram napravit u c++ windows form aplikaciji, program se radi o ohmovom zakonu (U=I*R, I=U/R, R=U/I) te 3 razlicite operacije moraju se izvoditi preko funkcija, a odabir svakog izracuna mora bit preko switch casea, molimvas nekog za pomoc nikako nemogu iskombinirat sve to skupa, profesor i ne pokazuje bas najbolje odnosno nista ne pokazuje ono sto znam sam sam naucio...

hvala :)

De malo više detalja, dva textboxa za dvije veličine i check box za treću, traženu veličinu? To je lagano.

14 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
royalhero kaže...
KrcoXp kaže...

Ovako imam za skolu moram napravit u c++ windows form aplikaciji, program se radi o ohmovom zakonu (U=I*R, I=U/R, R=U/I) te 3 razlicite operacije moraju se izvoditi preko funkcija, a odabir svakog izracuna mora bit preko switch casea, molimvas nekog za pomoc nikako nemogu iskombinirat sve to skupa, profesor i ne pokazuje bas najbolje odnosno nista ne pokazuje ono sto znam sam sam naucio...

hvala :)

De malo više detalja, dva textboxa za dvije veličine i check box za treću, traženu veličinu? To je lagano.

nista pretjerano nije uopce bitan nacin na koji ce se program napraviti bitno je da sadrzi gore navedene stvari...

17 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Pa kopiraj to sto si napravio, pa da vidimo kuda krenuti dalje.

Perhaps today IS a good day to die. PREPARE FOR RAMMING SPEED!
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Moze li da mi netko ispravi zadatak, ne znam gdje griješim. Ovo mi treba biti riješenje zadatka.

        *

     * * *

  * * * * *

     * * *

        *


for(int i=0; i<5; i++){
       for(int j=0; j<5; j++)
          if(i+j==2)
             cout<<"*";
          else if(i+j==3)
             cout<<"*";
          else if(i+j==4)
             cout<<"*";
          else if(i+j==5)
             cout<<"*";
          else if(i+j==6)
             cout<<"*";

cout<<endl;
    } 
}

 
0 0 hvala 0
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

imam zadatak:

 

 

Napišite program koji u jednostruko povezanu listu sprema podatke o sudionicima nagradne igre: redni broj, ime i prezime, adresu i poštanski broj mjesta stanovanja. Lista nije sortirana.

Napišite funkciju koja ce iz zadane liste izvaditi svaki drugi clan (drugi, cetvrti, šesti ...) i staviti ih u novu listu. Funkcija treba vratiti pokazivac na novu listu tj. NULL ako zadana lista ima manje od dva clana. Funkcija treba imati prototip:     zapis *fun(zapis *glava);

Korisnik najprije unosi podatke, a potom se ispisuju obje liste.

 

i moj dio koda koji funkcionira, ali uopce nemam ideje kako napravi funkciju koja uzdvaja svakog drugog clana..razmisljala sam da u upisu u listu stavaljam dvije "veze", tipa trenutni=trenutni->veza->veza; ali ne znan bas kako to napraviti...

mozda neka pomoc? :D

 

#include <iostream>

using namespace std;

 

struct zapis

{

int rb;

char ime[20];

char prezime[20];

char adresa[50];

int pb;

zapis *veza;    

}; 

 

void ispis(zapis *&glava) 

{

   zapis *trenutni=glava;

   while(trenutni)

  {

   cout<<trenutni->rb<<". "<<trenutni->ime<<" "<<trenutni->prezime<<" "<<endl;

   trenutni=trenutni->veza;

   }

}

 

 zapis *fun(zapis *glava)

  {

 

 

  };

 

int main()

{   

   char odg;

zapis *glava = 0;

do{

zapis * novi = new zapis;

cout<<"unesi redni broj: ";

cin>>novi->rb;

cout<<"unesi ime: ";

cin>>novi->ime;

cout<<"unesi prezime: ";

cin>>novi->prezime;

cout<<"unesi adresa: ";

cin>>novi->adresa;

cout<<"unesi postanski broj ";

cin>>novi->pb;

 

 

//upis u listu

 if (glava == 0)

     {

     glava= novi;

     novi->veza=0;

     }

   else {

   zapis *trenutni=glava, *prethodni=0;

   while(trenutni )

   {

     prethodni=trenutni;

     trenutni= trenutni->veza;

   }

   novi->veza=trenutni;

   if(prethodni!=0)

     prethodni->veza=novi;

   else

     glava=novi;

 

   }

cout<<"Zelite li dodati novi zapis? (d/n)"<<endl;

cin>>odg;

 

}while(odg=='d' || odg=='D');

 

 

   cout<<"prva lista : "<<endl;

   ispis(glava);

   cout<<"druga lista :";

 

system ("PAUSE");   

return 0;

}

 

 
0 0 hvala 0
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
zna li neko kako mogu pomocu char *mini(char *a, char *b) funkcije uraditi sljedece.

od dvije rijeci npr
drvo
suma

da mi izmijesa program tako da uporedjuje prvi znak obje rijeci i da izbacuje slovo koje ide prije.
npr rezultat bi bio drma? hitno mi je skroz. ako iko zna
12 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Uradio, ne treba!
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
Poceo sam raditi sa klasama i zelio bih zamoliti nekoga da mi u nekoliko redova objasni neke osnovne stvari:
Za sta nam sluze tacno klase?
Kako ih pisemo?
Na sta da obratim posebno paznju?
Neki posebni operatori?
Kako kompiliramo klase?
Hvala vam unaprijed!
Loyal to the game
16 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Kriva ti je formula, probaj ovo:

 

#include <iostream>
using namespace std;

int main(){
    for(int i=0; i<5; i++){
        for(int j=0; j<5; j++){
                if(i==2)cout<<"*";
                else if(i<2){
                        if(i+j>1&&j-i<3)cout<<"*";
                        else cout<<" ";
                        }
                else {
                     if(i-j<3&&i+j<7)cout<<"*";
                     else cout<<" ";
                     }  
                }
        cout<<endl;
    }


    system("PAUSE");
    return 0;
}

 

Imaj na umu da ovo radi samo za tvoj test primjer, tj. kod je prilagođen tvom rješenju.

Spirit...
15 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

emmm, pozdrav.

ova tema je dobra.. ali pounio bih cijelu temu sa pitanjima. naime, moram modelirati  i isprogramirati sustav (ne cijeli, samo dio) za diplomski rad.
ali imam problem - dizajner sam. mogu nacrtati bilo što, osmisliti sučelje, igre, priče... bilo što što treba dizajnirati ali programirati ne znam :D :D
tako da sam modelirao sustav (radi se o dijelu računalne igre na kojoj radim) ali nemam programirani dio.

zanima me, ima li uopće smisla da ovje postam pitanja o funkcijama... jer imam PUNO pitanja :)) inače, izgubljen sam sa tim dijelom diplomskog :(

uživajte ljudovi {#} 

KRI&amp;PLS strip gallerija: http://zzum.byethost5.com/
 
0 0 hvala 0
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
zzum kaže...

ali imam problem - dizajner sam. mogu nacrtati bilo što, osmisliti sučelje, igre, priče... bilo što što treba dizajnirati ali programirati ne znam :D :D

Uopće ne znaš programirati, ili samo misliš da si jako loš? Kako si se doveo u situaciju da za diplomski rad pišeš program, a ne znaš programirati?

 

Mi ti možemo pomoći sa raznim problemima i poteškoćama s kojima se susretneš. Ali ako očekuješ da te netko vodi za ruku dok ti pišeš program...  i sam znaš odgovor ;)

0xBADC0DE
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Prihvatio sam se rjesavanju zadatka sa kompleksnim brojevima pomocu klasa. Da li ko zna kako ih izracunavamo, i sta su uopste kompleksni brojevi jer pomocu materijala sa interneta ne mogu da skontam kako da postavim zadatak?

Loyal to the game
Poruka je uređivana zadnji put ned 2.6.2013 11:25 (Simon Ghost Riley).
15 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
Simon Ghost Riley kaže...

Prihvatio sam se rjesavanju zadatka sa kompleksnim brojevima pomocu klasa. Da li ko zna kako ih izracunavamo, i sta su uopste kompleksni brojevi jer pomocu materijala sa interneta ne mogu da skontam kako da postavim zadatak?

  http://hr.wikipedia.org/wiki/Kompleksni_broj

E-mail:
Lozinka:
 
vrh stranice