Konvertierungsprogramm in C

Das Forum fĂĽr Programmierer und Systemadmins. Von Shell-, Perl- und PHP-Scripts bis zur objektorientierten Programmierung mit C++.

Konvertierungsprogramm in C

Beitragvon moonangel » So 24 Sep, 2006 17:21

hallo miteinander !

ich hab ein kleines problem. ich brauche ein programm das eine zahl in eine andre umwandelt . also der benutzer gibt die 1. basis und die 1. zahl ein und dann die basis in die die zahl umgewandelt werden soll (zahlensysteme 1-32 hornerschema oder divisionsrestverfahren)

mein problem ist das ich es bis jetzt nur geschafft habe das er mir vom deziamlsystem in ein beliebges zahlsensystem umwandelt. ich komm einfach nicht drauf wie das mit beliebigen funktionieren soll.

ich hoffe ihr könnt mir da helfen ! :cry:
moonangel
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 49
Registriert: Sa 04 Mär, 2006 16:14

Beitragvon max_payne » So 24 Sep, 2006 17:35

Muss es zwingend in C sein?
Ich hätt hier eines in VB, wenn ich es noch finde!
max_payne
Ultimate Power-User
Ultimate Power-User
 
Beiträge: 4982
Registriert: Mo 30 Aug, 2004 12:25

Beitragvon lordpeng » So 24 Sep, 2006 17:47

klingt verdächtig nach hausaufgaben ...
lordpeng
Moderator
Moderator
 
Beiträge: 10198
Registriert: Mo 23 Jun, 2003 22:45

Beitragvon superracer » So 24 Sep, 2006 17:49

ich wĂĽrd da einfach strtol() verwenden ^^
superracer
Board-User Level 3
Board-User Level 3
 
Beiträge: 1073
Registriert: So 04 Jul, 2004 11:18

Beitragvon max_payne » So 24 Sep, 2006 19:17

klingt verdächtig nach hausaufgaben ...

Zu komplex.
max_payne
Ultimate Power-User
Ultimate Power-User
 
Beiträge: 4982
Registriert: Mo 30 Aug, 2004 12:25

Beitragvon moonangel » So 24 Sep, 2006 20:43

ja muss leider in C sein.
und nein hausaufgabe is es keine ;)
moonangel
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 49
Registriert: Sa 04 Mär, 2006 16:14

Beitragvon max_payne » So 24 Sep, 2006 21:02

ja muss leider in C sein.

gibts dafĂĽr eine begrĂĽndung?
max_payne
Ultimate Power-User
Ultimate Power-User
 
Beiträge: 4982
Registriert: Mo 30 Aug, 2004 12:25

Beitragvon moonangel » So 24 Sep, 2006 21:05

naja eigentlich schon. ich kenne bis jetzt noch keine andere programmiersprache. als nächstes lernen wir c++ und dann java aber derzeit sind wir noch bei c. das heist es muss in c sein weil sonst versteh ichs ja nicht und das möchte ich ja schließlich doch :)
moonangel
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 49
Registriert: Sa 04 Mär, 2006 16:14

Beitragvon superracer » So 24 Sep, 2006 21:48

und was spricht gegen strtol()?

eigentl ist das ja mehr ein mathematisches problem. scheitert's an der mathematik oder an der umsetzung derselben in c?
superracer
Board-User Level 3
Board-User Level 3
 
Beiträge: 1073
Registriert: So 04 Jul, 2004 11:18

Beitragvon moonangel » Mo 25 Sep, 2006 19:40

nein nein kein mathematisches problem. WIE ich es rechne weiĂź ich ja nur wie ich es jetzt richtig umsetze nicht.

wie gesagt ich hab :

#include <stdio.h>

void main()
{
int summe=0;
int basis,ziffer,zahl;
printf("Geben Sie bitte Ihre Basis ein:\n");
scanf("%d",&basis);
printf("Geben Sie bitte Ihre Zahl ein:\n");
scanf("%d",&zahl);
while((zahl>0)
{
ziffer=zahl%basis;
printf("%d",ziffer);
zahl=zahl/basis;
}

}
//umwandeln einer zahl von dezimal in beliebig

und ich brauche von beliebig in beliebig.
das problem is das ich nicht weiĂź wie ich das umsetzen soll.
und dieses strtol() kann ich leider nicht verwenden da ich 1.
gar nicht was das ist oder wie es funktioniert und 2. ich die
genauen schritte brauche. :(
aber trotzdem vielen dank fĂĽr den vorschlag
moonangel
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 49
Registriert: Sa 04 Mär, 2006 16:14

Beitragvon mo » Mo 25 Sep, 2006 19:58

wenn basis1 > 10 ist, wie gibst du die zahl dann ein?
frei nach dem hex-format weiter von 0-V?(im falle von b1=32) [0123456789ABCDEFGHIJKLMNOPQRSTUV)
sollte dem so sein, is int irgendwie ein ungeeigneter datentyp. (ich denke da so an char[] bzw char*)
LINEA7/XPIRIO ADSL 2048/512 FLAT
mo
Board-Mitglied
Board-Mitglied
 
Beiträge: 185
Registriert: Do 06 Jan, 2005 16:45

Beitragvon moonangel » Mo 25 Sep, 2006 20:05

JAA das is es ja was ich mich frage. wie mache ich es eienzahl einzugeben die größer als 10 ist und wie rechnei hc mit einem A oder B oder so. ich kann ja A nciht dividieren. ich dachte zuerst a den ASCII-Code aber daran bin ich kläglich gescheitert ..
moonangel
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 49
Registriert: Sa 04 Mär, 2006 16:14

Beitragvon mo » Mo 25 Sep, 2006 20:09

musst du direkt konvertieren, oder gehts auch via dezimal?
LINEA7/XPIRIO ADSL 2048/512 FLAT
mo
Board-Mitglied
Board-Mitglied
 
Beiträge: 185
Registriert: Do 06 Jan, 2005 16:45

Beitragvon moonangel » Mo 25 Sep, 2006 20:11

direkt mit hornerschema oder divisionsrestverfahren
moonangel
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 49
Registriert: Sa 04 Mär, 2006 16:14

Beitragvon mo » Mo 25 Sep, 2006 20:28

>wie mache ich es eienzahl einzugeben die größer als 10 ist und wie rechnei hc mit einem A oder B oder so.

ich täte mal nachfragen, wie mans denn gern hätte ;)

>direkt mit hornerschema oder divisionsrestverfahren
hornerschema sagt mir eigentlich nix, nach nem kurzen blick bei wikipedia bin ich aber auch nicht der meinung, das es deshalb komplett ohne "umweg" geht...(zugegebener maĂźen hab ichs mit mathe in diesen regionen auch nicht mehr so..)

falls das aber mit den buchstaben soweit stimmt, sollte der ASCII-code das kleinere problem sein..
LINEA7/XPIRIO ADSL 2048/512 FLAT
mo
Board-Mitglied
Board-Mitglied
 
Beiträge: 185
Registriert: Do 06 Jan, 2005 16:45

Nächste

ZurĂĽck zu PROGRAMMIER FORUM

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 16 Gäste