Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 128 ] Choď na stránku: predchádzajúca 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
Príspevok NapísalOffline : 03.10.2008 22:39

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
Príspevok NapísalOffline : 04.10.2008 1:57

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
Príspevok NapísalOffline : 04.10.2008 10:36

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
Príspevok NapísalOffline : 25.10.2008 9:57

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
Príspevok NapísalOffline : 25.10.2008 15:54

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
Príspevok NapísalOffline : 26.10.2008 13:36

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
Príspevok NapísalOffline : 26.10.2008 17:20

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ý: 21.04.24
Príspevky: 749
Témy: 31
Bydlisko: Ružomberok&...
Príspevok NapísalOffline : 26.10.2008 22:56

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.


Odpovedať na tému [ Príspevkov: 128 ] Choď na stránku: predchádzajúca 1, 2, 3, 4, 5


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

732

08.07.2014 20:40

XOLOO Zobrazenie posledných príspevkov

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

1250

07.03.2007 19:22

Spirit Zobrazenie posledných príspevkov

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

576

20.07.2010 12:54

walther Zobrazenie posledných príspevkov

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

2414

21.05.2010 21:08

Wpegb Zobrazenie posledných príspevkov

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

1123

10.05.2016 14:59

evolvsys Zobrazenie posledných príspevkov

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

410

13.05.2014 18:16

expresado Zobrazenie posledných príspevkov

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

1964

19.02.2011 22:46

vendo2 Zobrazenie posledných príspevkov

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

1147

25.09.2011 18:14

reDo Zobrazenie posledných príspevkov

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

552

24.10.2016 15:28

michalesku Zobrazenie posledných príspevkov

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

430

01.04.2019 11:20

tomasteicher Zobrazenie posledných príspevkov

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

385

20.03.2015 22:36

walther Zobrazenie posledných príspevkov

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

1483

26.12.2013 11:38

walther Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. C - Ako prekompilovať .c súbor do .exe?

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

7

555

02.11.2012 18:47

MasterMatoSK Zobrazenie posledných príspevkov

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

833

12.03.2009 12:08

Svjatogor Zobrazenie posledných príspevkov

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

1795

12.02.2011 0:12

The Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. C&C Generals : Zero Hour - turnaj

v Počítačové hry

0

775

25.02.2009 20:18

k0t0l Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra