Ahoj,
potřeboval bych pomoct s jedním programem, který mi dělá starosti. Zadání je: Vytvořte program, který převede číslo, zadané v libovolné soustavě (dvojkové až dvacítkové) na číslo v jiné soustavě.
Program se nejdříve zeptá na soustavu (nebo spíše základ soustavy, tj. číslo mezi 2-20), ve které bude číslo zadáno, pak vyzve k zadání tohoto čísla, zeptá se na základ soustavy, do které chcete číslo převést a nakonec vytiskne výsledek.
No vím, že k tomu mám použít f-ci strtol, která mi to převede...
No nejdříve to zkouším z dvojkové do desítkové, abych to vůbec pochopila... Následovně vypadá můj "začáteční" kód. Jenže při spuštění mi to hodí chybu, nevím, jak přesně tam definovat dvoj_s, aby mi to bralo číslo zadané z klávesnice... Tedy chci-li zadat číslo 001, tak potřebuji, aby to vypsalo 1.
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
char * dvoj_s, *sest_s, *osm_s, *dvan_s, *des_s, *dvac_s;
int cislo;
printf ("V jake soustave budete zadavat cislo? Napiste cislo od 2 do 20.\n");
scanf ("%d", &cislo);
if (cislo == 2)
{
int n;
printf("Zadejte cislo ve dvojkove soustave: ");
scanf ("%s", dvoj_s);
n = strtol (dvoj_s, 0, 10);
printf ("%s", k);
}
return 0;
}