C jazyk geometricke utvary
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
C jazyk geometricke utvary
chcel by som sa spytat ako by sa dalo naprogramovat aby vykreslilo napr stvorec s hviezdiciek alebo trojuholnik obdlznik a tak dakujem za pomoc potrebujem to na jednu skusku a este som len zacal s c
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
heja le ako na to nechapem tomu moc
napr toto som moc nepochopil
#include <stdio.h>
int main()
{
int dlzka, i, j;
printf("Zadajte dlzku ramena: ");
scanf("%d", &dlzka);
for (i = 1; i <= dlzka * 2 + 1; i++) {
for (j = 1; j <= dlzka * 2 + 1; j++)
if (j == dlzka+1 || i == dlzka+1)
putchar('*');
else
putchar(' ');
putchar('\n');
}
return 0;
malo bz to spravit nejaky kriz a mi tam budeme amt proste ze spravit napr trojuholnik alebo mozno aj kruh alebo neico ine
napr toto som moc nepochopil
#include <stdio.h>
int main()
{
int dlzka, i, j;
printf("Zadajte dlzku ramena: ");
scanf("%d", &dlzka);
for (i = 1; i <= dlzka * 2 + 1; i++) {
for (j = 1; j <= dlzka * 2 + 1; j++)
if (j == dlzka+1 || i == dlzka+1)
putchar('*');
else
putchar(' ');
putchar('\n');
}
return 0;
malo bz to spravit nejaky kriz a mi tam budeme amt proste ze spravit napr trojuholnik alebo mozno aj kruh alebo neico ine
Re: C jazyk geometricke utvary
Nakresli si to na stvorcekovy papier a potom podla toho sprav cyklus
V trojuholniku (predpokladam ze rovnostranny) najskor vykreslis len spravne posunuty horny vrchol jednou hviezdickou, odriadkujes a v dalsom riadky das 1 a 1 hviezdicku, opat spravne posunutu
A tak dalej az k zakladni, ktoru vykreslis celu
V trojuholniku (predpokladam ze rovnostranny) najskor vykreslis len spravne posunuty horny vrchol jednou hviezdickou, odriadkujes a v dalsom riadky das 1 a 1 hviezdicku, opat spravne posunutu
A tak dalej az k zakladni, ktoru vykreslis celu
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
to chapem ale tak ako spravim ze abz len na dve pozicie dalo hviezdicky a potom zase dalsie dve neviem ako to mam osetrit nemohol by si mi s tzm pomoct _?
Re: C jazyk geometricke utvary
Vkladaj tam medzery
putchar(' ');
Spravny pocet medzier si vlozis cyklom
putchar(' ');
Spravny pocet medzier si vlozis cyklom
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
hej ale ako na to s tymi logickymi operatormi treba to spravit tak aby tam boli nejake cykly a potom s logickymi operatormi vacsionou to je z eked je to jedna tak da tam znak ked je nula da medzeru a na to neviem prist
Re: C jazyk geometricke utvary
Žiadne logické operátory. Predpokladajme takýto tvar:
M môžeš nahradiť znakom medzery, ale takto je to názornejšie.
Takže čo k tomu:
Stačí to previesť do kódu, kde budeš mať pár cyklov - jeden hlavný (počet riadkov) a v ňom jeden na medzery (prebehne najprv 3x, potom 2x atď) a jeden na hviezdičky (kde počet hviezd sa bude zvyšovať o dva)
Hotovo.
Podobne si nakresli aj iné tvary.
Napr. ten kríž môžeš urobiť tiež takto jednoducho. Len tam bude niekde podmienka, že ak si v polovici riadkov, vykresli celé rameno a potom budeš pokračovať v medzerách a jednej hviezdičke.
Kód: Vybrať všetko
MMM*
MM***
M*****
*******
Takže čo k tomu:
Kód: Vybrať všetko
MMM* (3 medzery, 1 hviezda)
MM*** (2 medzery, 3 hviezdy)
M***** (1 medzera, 5 hviezd)
******* (0 medzier, 7 hviezd)
Hotovo.
Podobne si nakresli aj iné tvary.
Napr. ten kríž môžeš urobiť tiež takto jednoducho. Len tam bude niekde podmienka, že ak si v polovici riadkov, vykresli celé rameno a potom budeš pokračovať v medzerách a jednej hviezdičke.
-
harrison314
Hardcore addict
- Príspevky: 8223
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: C jazyk geometricke utvary
Takze prvak na FIIT, odporucam aby si sa C naucil ako otcenas.n0sf3ratus napísal:chcel by som sa spytat ako by sa dalo naprogramovat aby vykreslilo napr stvorec s hviezdiciek alebo trojuholnik obdlznik a tak dakujem za pomoc potrebujem to na jednu skusku a este som len zacal s c
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
BX vedel by si aj nacrtnut nejako tie cykly ?? takze by tam boli tri ale ako by mali nasledovat tak ze ten hlavny potom v nom sa vykona prvy pre medzery a potom az druhy na hviezdy ????
Re: C jazyk geometricke utvary
Skúšaj, skúšaj, skúšaj. Tak sa to naučíš najlepšie. A áno, napísal si to správne. Keď prepíšem to, čo si písal ty, do pseudokódu, dostaneš v podstate riešenie. Už to len zapísať v C.
Nauč sa riešiť úlohy takýmto spôsobom a nebudeš mať problém. Ten syntaktický guláš je druhoradý.
Kód: Vybrať všetko
velkost = nacitaj();
M = velkost - 1;
h = 1;
cyklus ( od 0 do velkost-1 )
{
cyklus ( od 0 do M ) vypis('M');
cyklus ( od 0 do h-1 ) vypis('*');
vypis('\n');
M = M-1;
h = h+2;
}-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
Kód: Vybrať všetko
#include<stdio.h>
int main()
{
int M,h,velkost,i,k,j;
scanf("%d",&velkost);
M = velkost - 1;
h = 1;
for(i=0; i<velkost-1;i++ )
{
for(j=0;j<M;j++ )
printf(" ");
for (k=1; k<h-1;k++ )
printf("*");
printf("\n");
M = M-1;
h = h+2;
}
getchar();
getchar();
return 0;
}tak spravil som to takto a funguje to diky ale este chcel by som to prerobit tak ze na riadky ze zadam ze kolko riadkov ma mat pyramida
Re: C jazyk geometricke utvary
Poriadne sa zamysli nad tým, čo si napísal a zistíš, že to máš tak ako chceš. Len tam stačí zmeniť pár maličkostí. Porovnaj to, čo som napísal ja a čo si napísal ty.
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
nieco asi v tom prvom cykle treba upravit len neviem co este
a uz som dosiel nato trosku zmenil som to v prvom cykle for z velkost-1 na velkost+1 a to mi spravi pyramidu taku vysoku ako chcem ale potom mi to tam trochu blbo nahodi ju posune o nieco doprava a niektore znaky zaniknu este to treba teda osetrit
a super dosiel som nato este v druhom cykle som spravil ze to ma ist do j<m+2 namiesto j<m a pekne mi to posunulo do prava a nakreslilo pyramidu
teraz by som este chcel to osetrit tak ze vnutro pyramidy aby bolo prazdne aby to bol trojuholnik ale to bude asi tazsie na osetrenie
a uz som dosiel nato trosku zmenil som to v prvom cykle for z velkost-1 na velkost+1 a to mi spravi pyramidu taku vysoku ako chcem ale potom mi to tam trochu blbo nahodi ju posune o nieco doprava a niektore znaky zaniknu este to treba teda osetrit
a super dosiel som nato este v druhom cykle som spravil ze to ma ist do j<m+2 namiesto j<m a pekne mi to posunulo do prava a nakreslilo pyramidu
teraz by som este chcel to osetrit tak ze vnutro pyramidy aby bolo prazdne aby to bol trojuholnik ale to bude asi tazsie na osetrenie
Re: C jazyk geometricke utvary
Choď na to rovnako ako doteraz, veľa skúšaj a nemáš problém.
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
hej teraz som skusal zrobit jeden program na nakreslenie trojuholnika trochu inac
a spravil som to tak ze najprv som len tak si napisal na papier program a potom to robil uz aj so syntaxou a slo to v pohode diki za dobru radu toto mi fakt pomohlo
len akurat sa bojim ze na tej skuske ma to tak rychlo vsetko nenapadne
lebo tam nato bude hodina a daju nam nieco nakreslit napr sachovnicu z hviezdiciek alebo take nieco a tam asi bude treba pouzit tie logicke cleny a tomu moc nerozumiem
Kód: Vybrať všetko
*
**
***
****
*****
****
***
**
*len akurat sa bojim ze na tej skuske ma to tak rychlo vsetko nenapadne
lebo tam nato bude hodina a daju nam nieco nakreslit napr sachovnicu z hviezdiciek alebo take nieco a tam asi bude treba pouzit tie logicke cleny a tomu moc nerozumiem
Re: C jazyk geometricke utvary
Tie "logické členy" používaš predsa aj ty, aha tu
K tomu si ale samozrejme ešte osvoj podmienky, často to bez nich nepôjde. (Ty podmienky vlastne už aj pouźívaš (zvýraznené časti), len poriadne pochop, čo znamenajú)
To čo robíš je správne. Drž sa toho. Rob si to na papier, prepisuj do C a experimentuj s tým.for(i=0; i<velkost-1;i++ )
{
for(j=0;j<M;j++ )
printf(" ");
for (k=1; k<h-1;k++ )
printf("*");
printf("\n");
M = M-1;
h = h+2;
}
K tomu si ale samozrejme ešte osvoj podmienky, často to bez nich nepôjde. (Ty podmienky vlastne už aj pouźívaš (zvýraznené časti), len poriadne pochop, čo znamenajú)
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
pokusim sa oni to u nas na vzorovych prikladoch robili cez logicky sucet a sucin
neico taketo napr
neico taketo napr
Kód: Vybrať všetko
for (i=1; i<=r; i++) {
for (j=1; j<=r; j++)
if (i % 2 == 1 && (j % 6 == 1 || j % 6 == 2) ||
i % 2 == 0 && j % 6 != 1 && j % 6 != 2)
putchar('*');
else
putchar(' ');
putchar('\n');
}Re: C jazyk geometricke utvary
Logický súčin/súčet/ďalšie ste sa mali učiť na matematike (mat. logika) - dokonca už na strednej.
Nie je to nič iné, ako stará dobrá pravdivostná tabuľka.
Takže to nemôže byť problém. Treba si to len poriadne kresliť a písať, čo kedy a s čím súvisí.
Nie je to nič iné, ako stará dobrá pravdivostná tabuľka.
Takže to nemôže byť problém. Treba si to len poriadne kresliť a písať, čo kedy a s čím súvisí.
-
n0sf3ratus
Amateur
- Príspevky: 22
- Registrovaný: 09 okt 2012, 13:56
Re: C jazyk geometricke utvary
no na strednej nieco bolo ale to bolo uplne len ze nejake vyroku ze co je logicky sucin a sucet teda and a or a to je vsetko nic viac moja stredna bola dost pozadu