Stránka: 4 z 5
| [ Príspevkov: 128 ] | 1, 2, 3, 4, 5 |
Autor | Správa |
---|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
No staci to dat do cyklu, jednotlive zvysky sa ti budu zapisovat do retazca, ktory potom vypises naopak. A myslim, ze na internete sa da najst kopu takychto kodov, staci len trochu pogooglit...
_________________ 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… |
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Použi niečo ako Kód: repeat s := chr(cislo MOD 2 + $30) + s; cislo := cislo DIV 2; until cislo = 0; (namiesto MOD môžeš použiť napr funkciu AND).
PS: Ten kód je veľmi približný (v Pascale som robil naposledy veľmi dávno).
PPS: Ty tam vlastne ani nepíšeš, v akom programovacom jazyku to chceš robiť.
|
|
Registrovaný: 19.09.06 Prihlásený: 19.11.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
podla mna to chcel v c (koli nadpisu temy)
scanf("%i",&cislo);
while (cislo!=0) {
j=cislo % 2;
i++;
s[i]=(char)j+0x30;
cislo=cislo/2;
}
for(j=i;j>1;j--) {
printf("%c",s[j]);
}
tu je vlastne chronov kod v c.
|
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
no nechcem narušiť tvoje sebavedomie ale nejako to nejede a ano ma to byť v C..
|
|
Registrovaný: 21.05.08 Prihlásený: 04.10.09 Príspevky: 21 Témy: 0 | 0 |
l3p1dl0 píše: no nechcem narušiť tvoje sebavedomie ale nejako to nejede a ano ma to byť v C..
Skús to napísať takto
Kód: #include <stdio.h>
int main(void) { int cislo,j,i,s[40]; scanf("%i",&cislo); while (cislo!=0) { j=cislo % 2; i++; s[i]=(char)j+0x30; cislo=cislo/2; } for(j=i;j>1;j--) { printf("%c",s[j]); } putchar('\n'); return 0; }
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
Moje riesenie bolo vo faze testovania, kym poslal svoje J3rGuS, ale uz ho sem teda poslem aj ja, ked som sa s tym narobil...
Kód: char *int2bin(int cislo) { int i=0, j, x; char bin[33], *vysledok; char *pointer; if (cislo<0) return NULL;
pointer=bin; while (cislo!=0) { sprintf(pointer, "%d", (cislo%2)); pointer++; cislo/=2; i++; } for (j=1; j<=4; j++) { if (i==8*j) break; if (i<8*j) { int pom=((8*j)-i); for (int x=1; x<=pom; x++) { sprintf(pointer, "0"); pointer++; i++; } break; } } bin[i]='\0'; i--; if ((vysledok=(char *)malloc(i*sizeof(char)))==NULL) return NULL; pointer=vysledok; for (j=i; j>=0; j--) { sprintf(pointer, "%c", bin[j]); pointer++; } return vysledok; } Funkcia int2bin() vracia pointer na retazec, v pripade neuspechu hodnotu NULL. Takze vyvolanie funkcie moze vyzerat Kód: int main(void) { int cislo; char *vysledok; scanf("%d", &cislo); if ((vysledok=int2bin(cislo))==NULL) { printf("Funkcia neprebehla spravne.\n"); continue; } else printf("Cislo %d v dvojkovej sustave - %s\n", cislo, vysledok);
return 0; }
_________________ 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… |
|
Registrovaný: 21.05.08 Prihlásený: 04.10.09 Príspevky: 21 Témy: 0 | 0 |
Áno, je tu aj taká možnosť, teda vyplňovanie pozíc týchto nulových bitov - mikroprocesorový zápis (8bit). Ale bežne je to pomerne zbytočne takto písať (teda tento prevod) a už vôbec pre názorný príklad vyjadrujúci myšlienku o ktorú išlo. Inak ten continue vo funkcii main vyhoď preč, ten tam nemá čo robiť.
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
Hej mas pravdu, neviem, kde sa tam to continue nabralo, pamatam si jak som ho mazal. No editovat prispevok uz bohuzial nemozem.
Kód: int main(void) { int cislo; char *vysledok; scanf("%d", &cislo); if ((vysledok=int2bin(cislo))==NULL) { printf("Funkcia neprebehla spravne.\n"); } else printf("Cislo %d v dvojkovej sustave - %s\n", cislo, vysledok);
return 0; }
_________________ 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… |
|
Registrovaný: 21.06.07 Prihlásený: 06.05.13 Príspevky: 421 Témy: 4 | 4 |
Kód: char * int2bin(int x) { static char ret[555]; int i, j;
for (i=0x8000000, j=0; i>0; j++, i>>=1) // ide to po bitoch zlava doprava { if ((x & i) != 0) ret[j] = '1'; // pridava "1" else ret[j] = '0'; // pridava "0" } ret[j]=0; // ukonci retazec
for (i=0; i<j-1; i++) // vynechava NULY na zaciatku retazca if (ret[i]=='1') break;
return ret+i; // vrati retazec ale NIE od zaciatku }
int main(int argc, char* argv[]) { int x=65537;
printf ("int:%d bin:%s\r\n", x, int2bin(x));
return 0; }
|
|
Registrovaný: 19.09.06 Prihlásený: 19.11.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
stopa27 píše: podla mna to chcel v c (koli nadpisu temy) scanf("%i",&cislo); while (cislo!=0) { j=cislo % 2; i++; s[i]=(char)j+0x30; cislo=cislo/2; } for(j=i;j>1;j--) { printf("%c",s[j]); }
tu je vlastne chronov kod v c.
vcera ma odpojilo od netu, takze som nestihol editnut, ale co ti na tom neslo?
|
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
J3rGuS ty si to aj skušal? lebo neviem ako tebe ale mne to sice vypiše vysledok ale za tym asi 20 riadkov nezmyslov...netušim prečo...
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
Problem je pravdepodobne v tom, ze premenna i nie je incializovana, cize ma pravdepodobne nahodnu hodnotu. Takze je staci inicializovat na zaciatku funkcie
Kód: #include <stdio.h>
int main(void) { int cislo,j,i=0,s[40]; scanf("%i",&cislo); while (cislo!=0) { j=cislo % 2; i++; s[i]=(char)j+0x30; cislo=cislo/2; } for(j=i;j>=1;j--) { printf("%c",s[j]); } putchar('\n'); return 0; }
_________________ 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… |
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
a ešte mi povedz čo treba aby som dostal odpoved v tvare :Cislo xxx ma v dvojkovej sustave tvar xxx" lebo dajako mi to neberie
|
|
Registrovaný: 19.09.06 Prihlásený: 19.11.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
za riadok na ktorom je scanf dopln riadok
printf("Cislo %d ma v dvojkovej sustave tvar ",cislo);
|
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
dakujem a ešte by ma zaujimalo ako to čislo v desiatkovej sustavy prevediem aj do osmičkovej a hexadecimalnej ževraj cez %x a %o ale vypiše stale %d...
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
Tak pred scanf si definuj premennu napr. pom, ktorej hodnota bude rovnaka ako cislo, a daj tam nieco ako
Kód: printf("Cislo %d v hexadecmialnej sustave: %x\n", pom, pom); printf("Cislo %d v osmickovej sustave: %o\n", pom, pom); printf("Cislo %d v dvojkovej sustave: ", pom); Cize Kód: #include <stdio.h>
int main(void) { int cislo,j,i=0,s[40], pom; scanf("%i",&cislo); pom=cislo; while (cislo!=0) { j=cislo % 2; i++; s[i]=(char)j+0x30; cislo=cislo/2; } printf("Cislo %d v hexadecmialnej sustave: %x\n", pom, pom); printf("Cislo %d v osmickovej sustave: %o\n", pom, pom); printf("Cislo %d v dvojkovej sustave: ", pom); for(j=i;j>=1;j--) { printf("%c",s[j]); } putchar('\n'); return 0; }
_________________ 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… |
|
Registrovaný: 21.06.07 Prihlásený: 06.05.13 Príspevky: 421 Témy: 4 | 4 |
Kód: printf ("hexa:%X okta:%o\r\n", x, x);
|
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
hmm...tak neviem či je chyba medzi stoličkou a monitorom ale ani jedno ani druhe stale ukazuje %d...nechapem
|
|
Registrovaný: 21.06.07 Prihlásený: 06.05.13 Príspevky: 421 Témy: 4 | 4 | |
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
Hm, divne, ak by si presne skopiroval to, co som ti predtym poslal, tak je nemozne aby to neslo. Ake cislo si zadaval? Ak si zadal 1, tak to sa ti zobrazi v kazde sustave rovnako...
Pripadne, ak si ten kod nejak menil, tak posli...
_________________ 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… |
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
nemože to mať niečo spoločne že pracujem s poliami ?
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
Pravdepodobne nie, ale skus poslat ten zdrojovy kod, nech vidime, ako to mas cele riesene. Takto ti sotva poradime...
_________________ 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… |
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
Kód: #include<stdio.h> #include<conio.h>
void main (void) { int m,n,i,j,M[10][10],sucet=0,min=999,cislo,x,y=0,s[40]; clrscr(); printf("Zadaj pocet riadkov a stlpcov: "); scanf("%d%d",&m,&n); for(i=0;i<m;i++) for(j=0;j<n;j++) { printf("\n Zadaj prvok M[%d][%d]=",i,j); scanf("%d",&M[i][j]); cislo=M[i][j]; if(i>j) sucet+=M[i][j]; } for(i=0;i<m;i++) for(j=0;j<n;j++) printf("\n M[%d][%d]=%d",i,j,M[i][j]); for(i=0;i<m;i++) { printf("\n\n\n"); for(j=0;j<n;j++) printf("\t %d",M[i][j]); } if(sucet>50 && sucet<150) for(i=0;i<m;i++) for(j=0;j<n;j++) { if(min>M[i][j]&&i==j) { min=M[i][j]; printf("\n\nMinimalny prvok na hlavnej diagonale je %d.",min); } } else printf("\n\nSucet pod hlavnou diagonalou je %d.",sucet); for(i=0;i<m;i++) for(j=0;j<n;j++) { while(cislo!=0) { x=cislo%2; y++; s[y]=(char)x+0x30; cislo=cislo/2; } for(x=y;x>=1;x--) { printf("%c",s[x]); } } getch(); }
neni to uplne dokončene nemam na to čas momentalne...proste chcem aby mi všetky čisla čo zadam do matice aby vypisalo v dvojkovej osmičkovej a hexadecimalnej....
|
|
Registrovaný: 29.09.07 Prihlásený: 23.11.24 Príspevky: 1246 Témy: 45 | 45 Bydlisko: Nové Mesto ... |
Ahojte chalani a dievčatá. Chcem sa naučiť "programovať", a nejde mi to potreboval by som poradiť kde robím chybi.. Mám takýto kod, program. Kód: /// (c) Imrich ///-------------------------------------------------- class MyProgram { static void Main() { System.Console.WriteLine("Ahoj svet a čo teraz???!"); } }
A keď sý ho uložím do fornátu EXE my to vyhadzuje chybu 16 bitovemu podsystému viac http://rapidshare.com/files/142069513/PIC_0046.JPG.html
No a neviek ako dalej
Dakujem vopred za pomoc.
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
l3pidlo, malo by to byt asi takto.
Kód: #include <stdio.h> #include <conio.h> #include <stdlib.h>
int main(void) { int m,n,i,j,M[10][10],sucet=0,min=999,cislo,x,y=0,s[40]; printf("Zadaj pocet riadkov a stlpcov: "); scanf("%d%d",&m,&n); for(i=0;i<m;i++) for(j=0;j<n;j++) { printf("\n Zadaj prvok M[%d][%d]=",i,j); scanf("%d",&M[i][j]); cislo=M[i][j]; if(i>j) sucet+=M[i][j]; } for(i=0;i<m;i++) for(j=0;j<n;j++) printf("\n M[%d][%d]=%d",i,j,M[i][j]); for(i=0;i<m;i++) { printf("\n\n\n"); for(j=0;j<n;j++) printf("\t %d",M[i][j]); } if(sucet>50 && sucet<150) for(i=0;i<m;i++) for(j=0;j<n;j++) { if(min>M[i][j]&&i==j) { min=M[i][j]; printf("\n\nMinimalny prvok na hlavnej diagonale je %d.",min); } } else printf("\n\nSucet pod hlavnou diagonalou je %d.\n", sucet); for(i=0;i<m;i++) for(j=0;j<n;j++) { printf("M[%d][%d] v decimalnej sustave: %d\n", i, j, M[i][j]); printf("M[%d][%d] v oktalovej sustave: %o\n", i, j, M[i][j]); printf("M[%d][%d] v hexadecimalnej sustave: %x\n", i, j, M[i][j]); printf("M[%d][%d] v binarnej sustave: ", i, j); while(cislo!=0) { x=cislo%2; y++; s[y]=(char)x+0x30; cislo=cislo/2; } for(x=y;x>=1;x--) { printf("%c",s[x]); } putchar('\n'); } putchar('\n'); system("pause"); }
Vyskusane na Dev-C++, malo by to fungovat spravne.
imrich - aky pouzivas kompilator? A nabuduce obrazky zmensi.
_________________ 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… |
|
Registrovaný: 19.09.08 Prihlásený: 08.10.11 Príspevky: 12 Témy: 1 | 1 |
mno malo lenže nefunguje :D:D stale prevedie iba posledne čislo do dvojkovej sustavy nie všetky a vypiše stale %d namiesto %o a %x... :/
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
_________________ 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… |
|
Registrovaný: 29.09.07 Prihlásený: 23.11.24 Príspevky: 1246 Témy: 45 | 45 Bydlisko: Nové Mesto ... |
Ak mám pravdu povedať "programoval" som zdrojoví kód HTML Cez poznámkoví blok tzv kopírovať-prilepiť a sem tam som používal HTML-Kit program.
A čo sa tiká skutočných programov ako Pascal C C+ C Bulterier som sa "učil" pomocou E-Kníh z rôznich fórach a postupoval som podľa dostupných. Teda na internete dostupných programov . A preto prosím o malú pomoc . Ako mám bod po bode postupovat. Ďakujem.
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 | 3 |
_________________ 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… |
|
Registrovaný: 03.10.08 Prihlásený: 26.10.08 Príspevky: 4 Témy: 0 | 0 |
dostali sme na ulohu naprogramovat dva priklady, lenze ja som jedina v skupine co programovanie v zivote nevidela, ostatny maju uz s tym skusenosti... nemohli by ste mi pomoct prosim? diki moc
prvy program sa ma opytat na znak/cislo, a podla toho co stlacim mi to premenit na to co je tomu znaku prislucha na klavesnici mobilu..
toto je to o co som sa ja pokusila, len mi to vobec nejde
Kód: #include <stdio.h> void main() { void a; printf("Zadaj cislo: \n"); scanf("%d", &a); 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"); } } { void b; printf("Zadaj znak: \n") scanf("%c", &b); switch(b) { 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"); } } a druhy priklad je nakreslit kosostvorec ked sa ma program opyta kolko ma mat najdlhsi riadok Kód: takto by mal vyzet ten kosostvorec pri vstupe 5 x x x x x x x x x x x x x x x x x x x x x x x x x
a jedine na co moje schopnosti stacia je stvorec:
#include <stdio.h> int main() { int x,y; printf("zadaj x\n"); scanf("%d", &x); printf("zadaj y\n"); scanf("%d", &y); for(int i=0; i < x; i++){ for(int ii=0; ii < y; ii++){ printf("x"); } printf("\n"); } return 0; }
|
|
Stránka: 4 z 5
| [ Príspevkov: 128 ] | 1, 2, 3, 4, 5 |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Assembler, C, C++, Pascal, Java | 5 | 790 | 08.07.2014 20:40 XOLOO | | v Kúpim | 0 | 460 | 13.05.2014 18:16 expresado | | v Ponuka práce | 0 | 1331 | 10.05.2016 14:59 evolvsys | | v Assembler, C, C++, Pascal, Java | 4 | 617 | 20.07.2010 12:54 walther | | v Počítačové hry | 10 | 1289 | 07.03.2007 19:22 Spirit | | v Assembler, C, C++, Pascal, Java | 18 | 2469 | 21.05.2010 21:08 Wpegb | | v Assembler, C, C++, Pascal, Java | 8 | 2003 | 19.02.2011 22:46 vendo2 | | v Assembler, C, C++, Pascal, Java | 17 | 1192 | 25.09.2011 18:14 reDo | | v Vymením a darujem | 0 | 475 | 01.04.2019 11:20 tomasteicher | | v Ponuka práce | 1 | 604 | 24.10.2016 15:28 michalesku | | v Počítačové hry | 0 | 839 | 25.02.2009 20:18 k0t0l | | v Assembler, C, C++, Pascal, Java | 1 | 421 | 20.03.2015 22:36 walther | | v ATI/AMD grafické karty | 17 | 1515 | 26.12.2013 11:38 walther | | v Assembler, C, C++, Pascal, Java | 7 | 589 | 02.11.2012 18:47 MasterMatoSK | | v Assembler, C, C++, Pascal, Java | 20 | 1864 | 12.02.2011 0:12 The | | v Assembler, C, C++, Pascal, Java | 2 | 872 | 12.03.2009 12:08 Svjatogor |
|