C++ zadaci,resenja,pitanja,tutoriali

Ja sam Mihailo Zivkovic,ucenik trece godine tehnicke skole.Ovom prilikom bih vas zamolio za pomoc,ukoliko je neko u mogucnosti da resi sledeci zadatak:
Задатак 2

Нека је дат целобројни низ a[14]. Напиши програм којим се формирају чланови овог низа функцијом random до 46. Овај низ формирај у функцији типа void formiranje, Прикажи добијени низ у главној функцији main. Позови функцију zameni која је типа void и у kojoj чланови низа замењују места на следећи начин.

a[0] са a[13], a[1] са a[12],a[2] са a[11],...a[6] са a[7],

У главној функцији main прикажи тако модификовани низ.

Прикажи резултат у облику:

"Clanovi formiranog niza su : __ __ __ ... "

"Clanovi modifikovanog niza su : __ __ __ ... "
Uz napomenu da se u funkciji zameni koristi pokazivac na niz.Hvala unapred.

ja sam Milan Bukowski iz sela Bastaji opstina Knezevo , coban po zanimanju . Ovom prilikom bi ti pomogao da resis zadatak :hahaha:
da bi se generisali neusmicno brojevi u ceu neophodno je koristiti random funkciju . Uz to imas na netu kako se koristi random biblioteka je time.h . Bolje sam malo da se zainteresujes nego ja da ti ispisujem .
Dalje probas sam da naucis kako se razmenjuje vreednost za dva broja . fora je da uvedes trecu promenjivu , i onda njoj dodas vrednost prve , a prva dobije vrednost druge , a druga dobije vrednost trece ( koja je jednaka prvoj )
void razmeni ( int *a , int *b) ;
to ti je pocetak funkcije .

dalje razmenjivanje vrednosti uopce nije u ovom slucaju tesko izvrsiti . Primetis da indeksi koji treba da razmenjuju vrednost su a i ( 13 -a)
 

Sta je ovo, pokusaj da izracunas onaj primer ili? :lol:

String, i onda vrsis manipulaciju, od cifre najmanje tezine krenes, sabiras, sa prenosom na veci nivo, naravno to sve sa pretvaranjem iz i u string. Jeste sporo i neefikasno resenje, ali ja tako vidim resenje ovoga. :) Postupak slican hardverskoj implementaciji sabiranja binarnih brojeva, samo sto je softversko resenje mnogo sporije, ali ipak sljaka. :)
 
Pozdrav,
Molio bih Vas da mi pomognete oko jednog zadatka muci me vec duze vreme:

Нека је дат целобројни низ a[14]. Напиши програм којим се формирају чланови овог низа функцијом random до 46. Овај низ формирај у функцији типа void formiranje, Прикажи добијени низ у главној функцији main. Позови функцију zameni која је типа void и у kojoj чланови низа замењују места на следећи начин.

a[0] са a[13], a[1] са a[12],a[2] са a[11],...a[6] са a[7],

У главној функцији main прикажи тако модификовани низ.

Прикажи резултат у облику:

"Clanovi formiranog niza su : __ __ __ ... "


"Clanovi modifikovanog niza su : __ __ __ ... "

Hvala unapred :)
 
stvar je u tome sto on nije jedini koji ima taj zadatak...profesor nece da nam pomogne...nista ni priblizno slicno nismo radili a zavise nam ocene od ovoga...ja licno imam isti zadatak kao i mihailo i svima nama je samo ta funkcija sa zamenom problem pa ako znas molim te pomozi nam nekako posto ovaj pocetak ne daje nikom cak ni ideju :(
 
Нека је дат целобројни низ a[14]. Напиши програм којим се формирају чланови овог низа функцијом random до 46. Овај низ формирај у функцији типа void formiranje, Прикажи добијени низ у главној функцији main. Позови функцију zameni која је типа void и у kojoj чланови низа замењују места на следећи начин.

a[0] са a[13], a[1] са a[12],a[2] са a[11],...a[6] са a[7],

У главној функцији main прикажи тако модификовани низ.

Прикажи резултат у облику:

"Clanovi formiranog niza su : __ __ __ ... "

"Clanovi modifikovanog niza su : __ __ __ ... "


grupa mojih drugova i ja smo dobili ovaj zadarak da uradimo i od njega nam zavise ocene iz programiranja..iskrenoza nas je pretezak posto nismo nista slicno radili....ako neko moze da pomogne molimga neka pozuriposto trebada predamo zadatak do sutra u 23h:(
 
stvar je u tome sto on nije jedini koji ima taj zadatak...profesor nece da nam pomogne...nista ni priblizno slicno nismo radili a zavise nam ocene od ovoga...ja licno imam isti zadatak kao i mihailo i svima nama je samo ta funkcija sa zamenom problem pa ako znas molim te pomozi nam nekako posto ovaj pocetak ne daje nikom cak ni ideju :(

****** sta ces takav je zivot . Aj buraz koga zajebavas ovdje . Napravio si 50 naloga da ti neko resi pisljivi domaci . Reko sam ti skicu resenja . Ako poglas kolega banirani ti je dao primer kako pise funkcija koja generise brojeve . To je doista lako drugo je sto ti luncuga i sve bi da ti drugi rade
 
Нека је дат целобројни низ a[14]. Напиши програм којим се формирају чланови овог низа функцијом random до 46. Овај низ формирај у функцији типа void formiranje, Прикажи добијени низ у главној функцији main. Позови функцију zameni која је типа void и у kojoj чланови низа замењују места на следећи начин.

a[0] са a[13], a[1] са a[12],a[2] са a[11],...a[6] са a[7],

У главној функцији main прикажи тако модификовани низ.

Прикажи резултат у облику:

"Clanovi formiranog niza su : __ __ __ ... "

"Clanovi modifikovanog niza su : __ __ __ ... "


grupa mojih drugova i ja smo dobili ovaj zadarak da uradimo i od njega nam zavise ocene iz programiranja..iskrenoza nas je pretezak posto nismo nista slicno radili....ako neko moze da pomogne molimga neka pozuriposto trebada predamo zadatak do sutra u 23h:(
Racunaj da ti ovde niko nece pomoci ako bar ne krenes sam. Mozes se javiti ako krenes pa zapnes negde, ukoliko imas nedoumicu i ne znas u cemu je problem. Ali sacekati da ti neko drugi uradi domaci, a da se ni ne potrudis, vec jednostavno odmah kazes ne znam, nema smisla.
 
stvar je u tome sto on nije jedini koji ima taj zadatak...profesor nece da nam pomogne...nista ni priblizno slicno nismo radili a zavise nam ocene od ovoga...ja licno imam isti zadatak kao i mihailo i svima nama je samo ta funkcija sa zamenom problem pa ako znas molim te pomozi nam nekako posto ovaj pocetak ne daje nikom cak ni ideju :(
Замена места две променљиве ради се још у другом разреду! И немојте да кукумавчите, него лепо седите и прочешљајте Интернет, има бар 50 РЕШЕНИХ примера са заменама две променљиве!
 
Pozdrav!
Imam zadacu koju ne znam uraditi, pa bih vas molila za pomoc!
Trebam napisati 5 zadataka i to po jedan iz:
1. pokazivaca na funkcije ili iz datoteka,
2. prosljedjivanje argumenata funkciji (sva tri nacina da budu zastupljena),
3. struktura,
4. klasa ( sa konstruktorima, operatorima i ostalim funkcijama ) i
5. klasa- nasljedjivanje
 
Samo da sastavis zadatak ili i da resis? Au sto volim ove sto naprave nalog na forumu samo zbog jednog pitanja, i posle toga se ne pojave vise nikad...
A da bar pokusas sama, a neko da pomogne? Pomoc nije da ti neko uradi sve, a da ni malo ne ulozis truda. Sve bi ti bilo jasno samo da si procitala prethodne postove. Evo, ako pokusas sama, pomoci cu.
 
Pozdrav svima,

nije me bilo dugo na ovom forumu, zamolio bih bilo koga ko je voljan da mi pomogne u resavanju zadatka. Zadatak je predpostavljam prilicno lak, ali sam ja nov u ovome, pa mi je zapelo kod brojaca. Trebao bih da ubacim brojac u igri ,,Pogodi broj". Odnosno da mi na kraju svakog zavrsenog nivoa (ima ih 3) izbaci ,,Bravo, pogodili ste, iz tog i tog pokusaja!" Postavicu odradjen zadatak bez brojaca.


Hvala vam unapred.


#include <stdio.h>
#include <stdlib.h>
#define TACNO 1
#define NETACNO 0

int main(int argc, char *argv[])
{
srand(time(NULL));

int x = rand() %10; // zamisljeni broj
int y = rand() %100;
int z = rand() %1000;
int odg; // odgovor korisnika
int pog; // indikator pogotka

int nivo;
printf("Izaberite nivo: \n");
printf("Za pocetni nivo pritisnite 1 \n");
printf("za srednji nivo pritisnite 2 \n");
printf("za tezi nivo pritisnite 3 \n");
scanf("%d", &nivo);

if (nivo == 1)
{
printf("Zamislio sam jedan ceo broj.\n");
pog = NETACNO;

while (pog == NETACNO)
{
printf("Pogodite taj broj (od 1 do 10): ");
scanf("%d", &odg);
if (odg < x)
{
printf("Zamislio sam veci broj.\n");
}
else if (odg > x)
{
printf("Zamislio sam manji broj.\n");
}
else
{
printf("Bravo, pogodili ste!\n");
pog = TACNO;
}
}
}
else if (nivo==2)
{
printf("Zamislio sam jedan ceo broj.\n");
pog = NETACNO;

while (pog == NETACNO)
{
printf("Pogodite taj broj (od 1 do 100): ");
scanf("%d", &odg);
if (odg < y)
{
printf("Zamislio sam veci broj.\n");
}
else if (odg > y)
{
printf("Zamislio sam manji broj.\n");
}
else
{
printf("Bravo, pogodili ste!\n");
pog = TACNO;
}
}
}
else if (nivo == 3)
{
printf("Zamislio sam jedan ceo broj.\n");
pog = NETACNO;

while (pog == NETACNO)
{
printf("Pogodite taj broj (od 1 do 1000): ");
scanf("%d", &odg);
if (odg < z)
{
printf("Zamislio sam veci broj.\n");
}
else if (odg > z)
{
printf("Zamislio sam manji broj.\n");
}
else
{
printf("Bravo, pogodili ste!\n");
pog = TACNO;
}
}
}
system("PAUSE");
return 0;
}
 
Kod:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define TACNO 1
#define NETACNO 0

int main(int argc, char *argv[])
{
    srand(time(NULL)); 
    
    int x = rand() %10; // zamisljeni broj
    int y = rand() %100;
    int z = rand() %1000;
    int odg; // odgovor korisnika
    int pog; // indikator pogotka
    int pokusaj=0;
    
    int nivo;
    printf("Izaberite nivo: \n");
    printf("Za pocetni nivo pritisnite 1 \n");
    printf("za srednji nivo pritisnite 2 \n");
    printf("za tezi nivo pritisnite 3 \n");
    scanf("%d", &nivo);
    
    if (nivo == 1)
    {
        printf("Zamislio sam jedan ceo broj.\n");
        pog = NETACNO;
        
        while (pog == NETACNO) 
        {
            ++pokusaj;
            printf("Pogodite taj broj (od 1 do 10): ");
            scanf("%d", &odg);
            if (odg < x)
            {
                printf("Zamislio sam veci broj.\n");
            } 
            else if (odg > x)
            {
                printf("Zamislio sam manji broj.\n");
            } 
            else 
            {
                printf("Bravo, pogodili ste iz %d pokusaja!\n",pokusaj); 
                pog = TACNO;
            }
        }
    }
    else if (nivo==2)
    {
        printf("Zamislio sam jedan ceo broj.\n");
        pog = NETACNO;
        
        while (pog == NETACNO) 
        {
            printf("Pogodite taj broj (od 1 do 100): ");
            scanf("%d", &odg);
            if (odg < y)
            {
                printf("Zamislio sam veci broj.\n");
            } 
            else if (odg > y)
            {
                printf("Zamislio sam manji broj.\n");
            } 
            else 
            {
                printf("Bravo, pogodili ste!\n"); 
                pog = TACNO;
            }
        }
    }
    else if (nivo == 3)
    {
        printf("Zamislio sam jedan ceo broj.\n");
        pog = NETACNO;
        
        while (pog == NETACNO) 
        {
            printf("Pogodite taj broj (od 1 do 1000): ");
            scanf("%d", &odg);
            if (odg < z)
            {
                printf("Zamislio sam veci broj.\n");
            } 
            else if (odg > z)
            {
                printf("Zamislio sam manji broj.\n");
            } 
            else 
            {
                printf("Bravo, pogodili ste!\n"); 
                pog = TACNO;
            }
        }
    }
    system("PAUSE");	
    return 0;
}

To takodje mozes uraditi mnogo krace. :)
Kod:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>

#define TACNO 1
#define NETACNO 0

int main()
{
    srand(time(NULL)); 
    
    int x,odg,pog=NETACNO,pokusaj=0,nivo;
    printf("Izaberite nivo: \nZa pocetni nivo pritisnite 1 \nZa srednji nivo pritisnite 2 \nZa tezi nivo pritisnite 3 \n");
    scanf("%d", &nivo);
    nivo=pow(10,nivo);
    x=rand()%nivo+1;
    printf("Zamislio sam jedan ceo broj.\n");
    while(!pog)
    {
       ++pokusaj;
       printf("Pogodite taj broj (od 1 do %d): ",nivo);
       scanf("%d", &odg);
       if (odg < x)
           printf("Zamislio sam veci broj.\n");
       else if (odg > x)
           printf("Zamislio sam manji broj.\n");
       else 
       {
           printf("Bravo, pogodili ste iz %d pokusaja!\n",pokusaj); 
           pog = TACNO;
       }
    }
    system("PAUSE");	
    return 0;
}
 
Poslednja izmena:
Zdravo drustvance. Imam neki problem koji je proisteko iz nekog zadatka sa takmicenja iz programiranja. Naime radi se sa stringovima. Koristio sam funckiju strstr koja vraca pokazivac na prvo pojavljivanje stringa s2 u s1. E sad mene zanima da li je moguce da nekako vidim ja koja je to pozicija prvog karaktera pojavljivanja u s1. PA sam mislio da ce ovakav kod to moci da uradi. Ali ima problema jer kompajler pokazuje gresku. Evo koda i slika greske.
for(j=0;pok!=niz[j];j++)
x=j;
Evo sta kaze kompajler.
Kompajler1.jpg

Ako vam treba ceo program evo(jos je u razvoju):
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<ctype.h>
#include<algorithm>
#include<math.h>
char niz[100000];
int main()
{
int n,x,k,i,j;
char res[1000],*pok;
scanf("%d%d%d",&n,&x,&k);
for(i=0;i<n;i++)
scanf("%llc",&niz);
for(i=0;i<fabs(x);i++)
{
if (x<0)
res='L';
else if(x>0)
res='R';
}
res='\0';
pok=strstr(niz,res);
if(pok=='\0')
printf("-1\n");
for(j=0;pok!=niz[j];j++)
x=j;
puts(res);
puts(x);
system("pause");
}
 

Izvinite nesto ne radi ovo izmeni poruku. Pa moram ovako poruku za porukom. Ovo je veoma drobro resenje samo me zanima. Sta u slucaju da nema stringa s2 u s1. U tom slucaju kad oduzmem ovo ovako. Koja ce vrednost da bude, jer onda pokazivac ima null vrednost. Ili ovo samo vazi u slucaju da funckija strstr vraca pokazivac koji pokazuje negde a nema null vrednost ?
 
jel moze pomoc molim vas
ZADATAK 3-1 (3 BODA)

Napišite program koji se sa korisnikom igra uganjevanje(otkrivanje broja) broja.Program prvo izmisli skriven broj od 1 do 99.Tada korisnik unosi brojeve, a program mu svaki put kaze je li broj manji veci ili jednak skrivenom broju. Kad korisnik pogodi tačan broj, izpise mu se broj pokusaja pa ga pita zeli li igrati jos jednom. Evo primjera:

UGANJEVANJE BROJA:
IZMISLIO SAM BROJ od 1 do 99. Pokusaj ga uganiti.
Unesi broj: 50
Unjeo si premali broj.
Unesi broj: 70
Unjeo si premali broj.
Unesi broj: 90
Unjeo si preveliko broj.
Unesi broj: 82
Odlicno! Otrio si u 4. pokusaju.

Zelis li igrati jos jednom [D/N]: N
Dovidenja!

ZADATAK 3-2 (2 BODA)

Napišite program, koji se sa korisnikom igra igre Blackjack sa kockama. Pri toj igri dva igraca izmjenično bacaju kocku i pokusavaju zbrati 21 tacku. Igrac moze kocku baciti vise puta,ali samo dotle da ne predje 21 tacku. Moze odustati ranije. isti, koji je bliže broju 21, dobije 2 tacke. ako je rezultat jednak, dobiju svaki 1 tacku.Ukoliko igrač prelazi 21 tacku pobjedio je drugi player. Ako su oba premašila 21-tacku jednako je.Igra se ponavlja 6 puta, a oni koji prikupe najviše bodova je konačan pobjednik.Korisnik uvijek baca prvi, računar ne sme varati, ali uvijek mora igrati, tako da kad postigne 18 bodova ili više odustaje ranije,a prije nikada ne odustaje.Program bi trebao proglasiti pobjednika u igri. Evo primjer:


IGRA BLACKJACK
Pozdravljeni!

Igrati cemo 6 igara.

Igra broj 1
Trenutni rezultat je 0 protiv 0

Bacio si 5.
Trenutno imas 5 tacki. Dali ces bacati kocku [D/N]: D
Bacio si 3.
Trenutno imas 8 tacki. Dali ces bacati kocku [D/N]: D
Bacio si 6.
Trenutno imas 14 tacki. Dali ces bacati kocku [D/N]: D
Bacio si 6.
Trenutno imas 20 tacki. Dali ces bacati kocku [D/N]: N

sada ja bacam kocku.
bacio sam: 2,6,4,4,3
Dosegao sam 19 tacki.
pobjedio si ti. Dobijes 2 tacki.

Igra broj 2
Trenutni rezultat je 2 protiv 0 za tebe
bacio si si 3.
...
...
sve igre su zavrsene. Konacni rezultat je 7 protiv 5 za tebe.
CESTITAM. TI SI POBIJEDNIK!


OVO JE KOD KOJEG MOZEMO UPOTRJEBITI:
Kod:
Funkcija vnosChar {
 procitaj unos i vrati jedno slovo
}

Funkcija vnosInt {
 procitaj unos i vrati jedan broj
}

Glavni program {
  inicializiraj generator slucajnih brojeva
  postavi broj tacki oba igraca na 0
  izpisi pozdrav i uvodna pojasnila
  ponavljaj 6 puta {
    izpisi trenutno stanje tacki
    postavi korisnikove tacke na 0
    ponavljaj, dokad korisnik zeli {
      izaberi broj i ispisi ga
      izpisi trenutnu svotu
      pitaj dali zeli korisnik jos igrati 
    }
    postavi racunarove tacke na 0
    ponavljaj, dotad kad je tacki manje od 18 {
      izaberi i izpisi broj
    }
    izpisi racunarov rezultat
   odredi pobjednika i azuriraj broj tacki   
  }
rezultatno pogledano proglasi pobjednika
}
 
Prvi sam radio na faxu mada smo pravili da mi kuca kolega, pa ja pogadjam, stavis INT b= rand() % 100 ; // od 1 do 99
int pog;
bool izlaz=false;
char exit;

do{
cin>>pog;
if(pog>b)
cout<<"Unjeli ste veći broj"<<endl;
else if (pog<b)
cout<<"Unjeli ste manji broj"<<endl;
else if(pog==b){
cout<<"Pobjedili ste"<<endl;
cout<<"Zelite li jos igrati"<<endl;
do{cin>>exit;}while(exit!='D' || exit!='N'); // osiguras izlaz sa D i N
}while(exit!=N)

sada dodajes brojac ako hoces da ti ispisuje koliko puta vec pogadjas itd, program se mogao u manje linija koda odraditi ali evo ti ovako da vidis kako dise

sto se tice drugog zadatka koristi rand()%20+2; i zbrajaj :) A kompjuteru stavis petlju iz koje ce izac cim mu zbir bude veci od 18
 

Back
Top