[ Príspevkov: 128 ] 1, 2, 3, 4, 5
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.08
Prihlásený: 15.05.15
Príspevky: 884
Témy: 3 | 3
NapísalOffline : 03.10.2008 22:39 | lekcia v C++

V tom prvom bolo zopar chyb, takto by to uz malo ist
Kód:
#include <stdio.h>
 
int main(void)
{
 char a;
 printf("Zadaj cislo: \n");
 scanf("%d", &a);
 while (getchar()!='\n');
 switch(a) {
  case 2: printf("a,b,c\n");break;
  case 3: printf("d,e,f\n");break;
  case 4: printf("g,h,i\n");break;
  case 5: printf("j,k,l\n");break;
  case 6: printf("m,n,o\n");break;
  case 7: printf("p,q,r,s\n");break;
  case 8: printf("t,u,v\n");break;
  case 9: printf("w,x,y,z\n");break;
  default: printf("Zadaj cislo od 2 do 9\n");
 }
 
   printf("Zadaj znak: \n");
   scanf("%c", &a);

   switch(a) {
      case 'a': printf("2");break;
      case 'b': printf("2");break;
      case 'c': printf("2");break;
      case 'd': printf("3");break;
      case 'e': printf("3");break;
      case 'f': printf("3");break;
      case 'g': printf("4");break;
      case 'h': printf("4");break;
      case 'i': printf("4");break;
      case 'j': printf("5");break;
      case 'k': printf("5");break;
      case 'l': printf("5");break;
      case 'm': printf("6");break;
      case 'n': printf("6");break;
      case 'o': printf("6");break;
      case 'p': printf("7");break;
      case 'q': printf("7");break;
      case 'r': printf("7");break;
      case 's': printf("7");break;
      case 't': printf("8");break;
      case 'u': printf("8");break;
      case 'v': printf("8");break;
      case 'w': printf("9");break;
      case 'x': printf("9");break;
      case 'y': printf("9");break;
      case 'z': printf("9");break;
      default: printf("Zadali ste neplatny znak: \n");
   }
}

Na ten druhy sa este mrknem neskor. :)


_________________
Empty your memory, with a free()… like a pointer!
If you cast a pointer to an integer,
it becomes the integer, if you cast a pointer to a struct, it becomes the struct…
The pointer can crash…, and can overflow…
Be a pointer my friend…
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.05.08
Prihlásený: 04.10.09
Príspevky: 21
Témy: 0 | 0
NapísalOffline : 04.10.2008 1:57 | lekcia v C++

Keďže čas súril, tak som to napísal čo najrýchlejšie.
A to tak, že jednoducho som vytvoril prvú čásť kosoštvorca a upravením cyklov prvej som vytvoril druhú, resp. zkopíroval.
Kód:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
  unsigned short int i, j, r, k, pom, riadok, bod = 0;

  printf("Zadaj najdlhsi riadok:\n");
  if (scanf("%u", &riadok) != 1)
    return 1;
  r = riadok - 1; //r urcuje medzery, kt. je o 1 menej ako dlzka riadku

  for (i = 0; i < riadok; i++) {   //zaciatok prvej casti, teda vrchu + "zakladna ciara"
    for (j = r; j > 0; j--)
      putchar(' ');
    r--;     //riadky sa najprv kratia
    bod++;  //pct. bodov sa zvysuje
    for (k = 0; k < bod; k++) {
      putchar('x'); putchar(' ');
    }
    putchar('\n');
  }
  r = 1;   //zaciatok je hned pod "zakl. ciarou", takze medzera bude 1
  //riadok--;  nie je nutne znizovat pct. riadkov druhej casti, pretoze aj tak by posledny cyklus vykreslovania bodov neziaduceho riadku neprebehol, lebo hodnota premennej bod by bola 0
  for (i = 0; i < riadok; i++) {   //zaciatok spodnej casti
    for (j = r; j > 0; j--)
      putchar(' ');
    r++;  //tu naopak sa zase pct. stlpcov pred bodom zvysuje
    bod--;  // pct. bodov sa znizuje
    for (k = 0; k < bod; k++) {
      putchar('x'); putchar(' ');
    }
    putchar('\n');
  }
  system("pause");
  return 0;
}

No a teraz je na tebe ako si to napíšes...akou genialnou myšlienkou...

Citácia:
void a;
Zaujímavý zápis.
Inak ak používaš "typ ničoho" void, tak je dobre programu určiť, že naozaj funkcia main nemá žiadne parametre, teda int main(void).


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.10.08
Prihlásený: 26.10.08
Príspevky: 4
Témy: 0 | 0
NapísalOffline : 04.10.2008 10:36 | lekcia v C++

diki moc.vam obidvom ;)

J3rGuS píše:
Citácia:
void a;
Zaujímavý zápis.
Inak ak používaš "typ ničoho" void, tak je dobre programu určiť, že naozaj funkcia main nemá žiadne parametre, teda int main(void).


viem ze je to zaujimave, len v zivote som nic z programovania nevidela a toto sa mi podario pomocou ucebnice :oops:


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.10.08
Prihlásený: 26.10.08
Príspevky: 4
Témy: 0 | 0
NapísalOffline : 25.10.2008 9:57 | lekcia v C++

ahojte, uz mam nove zadania, mam ich uz vypracovane len by som vas chcela poprosit ci by ste mi ich nemohli skontrolovat ;)

A) Vypracujte program, ktorého súčasťou budú štyri funkcie. Funkcie násobenia, delenia, mocniny a odmocniny. V telách týchto funkcií môžte použiť iba operácie „+“ a „-„.
Kód:
#include <stdio.h>


//funkcia na nasobenie premennych
int nasobenie(int a,int b) {
        int c=0;

        for(int i=0;i<a;i++) {
                c=c+b;
        }
        return c;
}

//funkcia na celociselne delenie premennych
int delenie(int a,int b) {
        int c = 0, pom =0;
        int  zv;
        int kontrola =1;

        if (a < b) {
                a = pom;
                a =b;
                b = pom;
        }

        while (kontrola != 0) {
                a=a-b;
                c++;
                if (a<b) {kontrola = 0; zv = a;}
                if (a==0) {kontrola = 0; zv = 0;}
        }

        if (zv>0) printf("Zvysok po deleni je %d\n",zv);
        return c;
}

//funkcia na pocitanie mocnin
float mocnina (float a,int b)
{
 float c=1;
 for (float i=1;i<=b;++i)  c=c*a;
 return c;
}

//funkcia na pocitanie odmocnin
int odmocnina(double a)
{
 double d = 0; //spodna hranica pociatocneho intervalu
 double h = a + 1; //horna hranica pociatocneho intervalu
 double eps = 1.0e-10; //zelana relativna presnost
 double s = (d + h) / 2;
 
 while ( (h - d) / s > eps)
 {if (s * s >= a)
  h = s;
 else
  d = s;
 s = (d + h) / 2;
 
 return s;
  }
printf("Odmocnina %lf je %lf",a, s);
}
//funkcia main
void main() {
        int a,b, vysledok;
        int volba;

                printf("Zadaj 2 cisla\n");
        scanf("%d %d", &a,&b);


        printf("Zadaj volbu:\n");
        printf("Pre nasobenie zadaj 1\n");
        printf("Pre delenie zadaj 2\n");
        printf("Pre mocninu zadaj 3\n");
      printf("Pre odmocninu zadaj 4\n");
        scanf("%d",&volba);

        if (volba != 4) printf("Ide to");


        switch(volba) {
        case 1: vysledok = nasobenie(a,b); break;
        case 2: vysledok = delenie(a,b); break;
        case 3: vysledok = mocnina(a,b); break;
        case 4: vysledok = odmocnina(a); break;
        }
        printf("Vysledok je %d\n",vysledok);

}



B) Vypracujte program, ktorý bude simulovať kalkulačku. Užívateľ bude môcť používať funkcie sčítavania, odčítavania, násobenia, delenia, mocniny, odmocniny, ukladania čísla a používania uloženého čísla. Program bude musieť bežať až dokým sa ho užívateľ sám nerozhodne ukončiť.

ten int z by mal hovorit ze sa ma pocitat dokial nezadam 1, je to spravne?
toto mam len nevie ako to urobit s tym ukladanim cisla.

Kód:
#include <stdio.h>

//funkcia na scitanie premennych
int scitanie(int a,int b)  {

        int c;

        c = a+b;
        return c;
       
}

//funkcia na odcitanie premennych
int odcitanie(int a, int b) {
        int c;
        if (a>=b) c = a-b;
        else c = b-a;

        return c;
}

//funkcia na nasobenie premennych
int nasobenie(int a,int b) {
        int c=0;

        for(int i=0;i<a;i++) {
                c=c+b;
        }
        return c;
}

//funkcia na celociselne delenie premennych
int delenie(int a,int b) {
        int c = 0, pom =0;
        int  zv;
        int kontrola =1;

        if (a < b) {
                a = pom;
                a =b;
                b = pom;
        }

        while (kontrola != 0) {
                a=a-b;
                c++;
                if (a<b) {kontrola = 0; zv = a;}
                if (a==0) {kontrola = 0; zv = 0;}
        }

        if (zv>0) printf("Zvysok po deleni je %d\n",zv);
        return c;
}

//funkcia na pocitanie mocnin
float mocnina (float a,int b)
{
 float c=1;
 for (float i=1;i<=b;++i)  c=c*a;
 return c;
}

//funkcia na pocitanie odmocnin
int odmocnina(double a)
{
 double d = 0; //spodna hranica pociatocneho intervalu
 double h = a + 1; //horna hranica pociatocneho intervalu
 double eps = 1.0e-10; //zelana relativna presnost
 double s = (d + h) / 2;
 
 while ( (h - d) / s > eps)
 {if (s * s >= a)
  h = s;
 else
  d = s;
 s = (d + h) / 2;
 
 return s;
  }
printf("Odmocnina %lf je %lf",a, s);
}
//funkcia main
void main() {
   do{
   
   int z=0;
   printf("ak chcete pocitat stlacte hociake cislo ak nie stlacte 1"\n);
   scanf("%d", &z);

   int a,b, vysledok;
        int volba;

                printf("Zadaj 2 cisla\n");
        scanf("%d %d", &a,&b);


        printf("Zadaj volbu:\n");
        printf("Pre nasobenie zadaj 1\n");
        printf("Pre delenie zadaj 2\n");
        printf("Pre mocninu zadaj 3\n");
      printf("Pre odmocninu zadaj 4\n");
      printf("Pre scitanie zadaj 5\n");
      printf("Pre odcitanie zadaj 6\n")
        scanf("%d",&volba);

        if (volba != 4) printf("Ide to");


        switch(volba) {
        case 1: vysledok = nasobenie(a,b); break;
        case 2: vysledok = delenie(a,b); break;
        case 3: vysledok = mocnina(a,b); break;
        case 4: vysledok = odmocnina(a); break;
      case 5: vysledok = scitanie(a,b);break;
      case 6: vysledok = odcitanie(a,b);break;
        }
        printf("Vysledok je %d\n",vysledok);
   }
   
   while (z != 1)
}



diki ;)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.08
Prihlásený: 15.05.15
Príspevky: 884
Témy: 3 | 3
NapísalOffline : 25.10.2008 15:54 | lekcia v C++

A co tak to skusit skompilovat? Mas tam nejake chyby, a taktiez nejak nefunguje pocitanie odmocnin... Funkcia main ti nevracia int, miesas tam typy int a double atd. :roll:


_________________
Empty your memory, with a free()… like a pointer!
If you cast a pointer to an integer,
it becomes the integer, if you cast a pointer to a struct, it becomes the struct…
The pointer can crash…, and can overflow…
Be a pointer my friend…
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.10.08
Prihlásený: 26.10.08
Príspevky: 4
Témy: 0 | 0
NapísalOffline : 26.10.2008 13:36 | lekcia v C++

no o to som sa pokusala, len tam mam niekde nejaku chybu lebo pri obidvoch zadaniach mi visual studio vypisuje stale ze nemoze specific nejaky path


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.08
Prihlásený: 15.05.15
Príspevky: 884
Témy: 3 | 3
NapísalOffline : 26.10.2008 17:20 | lekcia v C++

Skontroluj si vsetky typy premennych a typy navratovych hodnot funkcii, mas to tam dost domiesane... Deklaracia funkcie main by mala skor vyzerat takto
Kód:
int main(void)

Takisto nemas ani deklarovanu premennu z.
Skus si stiahnut nejake iny kompliator, napr. Dev-C++, ten ti vsetky chyby vypise, neviem ako to je vo Visual Studio... :roll:


_________________
Empty your memory, with a free()… like a pointer!
If you cast a pointer to an integer,
it becomes the integer, if you cast a pointer to a struct, it becomes the struct…
The pointer can crash…, and can overflow…
Be a pointer my friend…
Offline

Užívateľ
Užívateľ
lekcia v C++

Registrovaný: 19.09.06
Prihlásený: 19.11.24
Príspevky: 749
Témy: 31 | 31
Bydlisko: Ružomberok&...
NapísalOffline : 26.10.2008 22:56 | lekcia v C++

Kód:
#include <stdio.h>
#include <math.h>

//funkcia na scitanie premennych
float scitanie(int a,int b)  {

        int c;

        c = a+b;
        return c;
       
}

//funkcia na odcitanie premennych
float odcitanie(int a, int b) {
        int c;
        if (a>=b) c = a-b;
        else c = b-a;

        return c;
}

//funkcia na nasobenie premennych
float nasobenie(int a,int b) {
        int c=0;

        for(int i=0;i<a;i++) {
                c=c+b;
        }
        return c;
}

//funkcia na celociselne delenie premennych
float delenie(int a,int b) {
        int c = 0, pom =0;
        int  zv;
        int kontrola =1;

        if (a < b) {
                pom = a;
                a =b;
                b = pom;
        }

        while (kontrola != 0) {
                a=a-b;
                c++;
                if (a<b) {kontrola = 0; zv = a;}
                if (a==0) {kontrola = 0; zv = 0;}
        }

        if (zv>0) printf("Zvysok po deleni je %d\n",zv);
        return c;
}

//funkcia na pocitanie mocnin
float mocnina (int a,int b)
{
 float c=1;
 for (float i=1;i<=b;++i)  c=c*a;
 return c;
}

//funkcia na pocitanie odmocnin
double odmocnina(double a)
{
return sqrt(a);
}
//funkcia main
int main() {
   int z=0;
   int a,b;
   float vysledok;
        int volba;
   do {
   
   
   printf("ak chcete pocitat stlacte hociake cislo ak nie stlacte 1\n");
   scanf("%d", &z);
   if (z==1) break;
   

                printf("Zadaj 2 cisla\n");
        scanf("%d %d", &a,&b);


        printf("Zadaj volbu:\n");
        printf("Pre nasobenie zadaj 1\n");
        printf("Pre delenie zadaj 2\n");
        printf("Pre mocninu zadaj 3\n");
      printf("Pre odmocninu zadaj 4\n");
      printf("Pre scitanie zadaj 5\n");
      printf("Pre odcitanie zadaj 6\n");
        scanf("%d",&volba);

        if (volba != 4) printf("Ide to");


        switch(volba) {
        case 1: vysledok = nasobenie(a,b); break;
        case 2: vysledok = delenie(a,b); break;
        case 3: vysledok = mocnina(a,b); break;
        case 4: vysledok = odmocnina(a); break;
      case 5: vysledok = scitanie(a,b);break;
      case 6: vysledok = odcitanie(a,b);break;
        }
        printf("Vysledok je %.2f\n",vysledok);
   }
   
   while (z != 1);
   return 0;
}


Bolo tam par chyb ohladom typov funkcii, odmocnina bola podla mna riesena dost nestastne, bodkociarka v jednom z case a vo vymene premennych v funkcii delenie namiesto pom=a bolo a=pom. + pridana jedna podmienky na testovanie ukoncovacej jednotky - v povodnom to este raz urobilo cely cyklus. v visual c++ 6.00 to ide OK.


 [ Príspevkov: 128 ] 1, 2, 3, 4, 5


lekcia v C++



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Mám sa učiť C ++/objective C/ C#?

v Assembler, C, C++, Pascal, Java

5

790

08.07.2014 20:40

XOLOO

V tomto fóre nie sú ďalšie neprečítané témy.

Naučte se C++ za 21 dní + C++Builder 6

v Assembler, C, C++, Pascal, Java

18

2469

21.05.2010 21:08

Wpegb

V tomto fóre nie sú ďalšie neprečítané témy.

K: PC Literaturu- C++/C#/java/python/ruby/RoR

v Kúpim

0

460

13.05.2014 18:16

expresado

V tomto fóre nie sú ďalšie neprečítané témy.

Hledá se programátor C/C++ pro vesmírné projekty (Praha)

v Ponuka práce

0

1331

10.05.2016 14:59

evolvsys

V tomto fóre nie sú ďalšie neprečítané témy.

rozdiel medzi Borland 3.1 C++ vs Net. C++

v Assembler, C, C++, Pascal, Java

4

617

20.07.2010 12:54

walther

V tomto fóre nie sú ďalšie neprečítané témy.

Hladam hracov na C&C Generals Zero Hour

v Počítačové hry

10

1289

07.03.2007 19:22

Spirit

V tomto fóre nie sú ďalšie neprečítané témy.

Čo mi treba na programovanie v C/C++

v Assembler, C, C++, Pascal, Java

17

1192

25.09.2011 18:14

reDo

V tomto fóre nie sú ďalšie neprečítané témy.

aky je rozdiel medzi C++ a Visual C++ ?

v Assembler, C, C++, Pascal, Java

8

2003

19.02.2011 22:46

vendo2

V tomto fóre nie sú ďalšie neprečítané témy.

Darujem knihy o programovaní (HTML, Java, Visual C++, C++ Builder, Android)

v Vymením a darujem

0

475

01.04.2019 11:20

tomasteicher

V tomto fóre nie sú ďalšie neprečítané témy.

Hladame 3x C/C++ Linux developer- projekt 11/2016-2/2017

v Ponuka práce

1

604

24.10.2016 15:28

michalesku

V tomto fóre nie sú ďalšie neprečítané témy.

program na projekt (C#, C++, pascal, java)

v Assembler, C, C++, Pascal, Java

2

872

12.03.2009 12:08

Svjatogor

V tomto fóre nie sú ďalšie neprečítané témy.

C# alebo C++ , ktore knizky na ucenie?

v Assembler, C, C++, Pascal, Java

20

1864

12.02.2011 0:12

The

V tomto fóre nie sú ďalšie neprečítané témy.

C&C Generals : Zero Hour - turnaj

v Počítačové hry

0

839

25.02.2009 20:18

k0t0l

V tomto fóre nie sú ďalšie neprečítané témy.

C/C++ problém so súbormi a hodnotami

v Assembler, C, C++, Pascal, Java

2

347

09.12.2012 10:43

nBXXL

V tomto fóre nie sú ďalšie neprečítané témy.

C# alebo C++ appka/program na výpočty

v Assembler, C, C++, Pascal, Java

1

421

20.03.2015 22:36

walther

V tomto fóre nie sú ďalšie neprečítané témy.

Ako nastavit grafikuv AMD catalyst c.c.

v ATI/AMD grafické karty

17

1515

26.12.2013 11:38

walther



© 2005 - 2024 PCforum, edited by JanoF