Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Borland C++ Builder » Widerstandsberechnung

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
19.03.2003, 20:49 Uhr
~Chaz-Man
Gast


Hallo Leute,
ich habe hier eine Aufgabe für C++, die so aussehen soll:

Man gibt den Widerstand an, und dann soll errechnet werden,welche Farbringe es sind. Und zwar soll es ein 4er Ring sein.

Über Hilfe würde ich mich freuen.Bitte schickt mir ne MAil:

chaz-man@web.de

Danke schonmal im Voraus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.03.2003, 12:31 Uhr
Bruder Leif
dances with systems
(Operator)


Moin!

Wo genau hängt's denn? Hast Du Dir schon Gedanken gemacht, wie das Programm aussehen bzw. arbeiten soll?
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.06.2004, 17:34 Uhr
~S3rj_T4nKi4n
Gast


Moin!

Jo dieses problem hab ich auch!


Also da der Leifus nichts mehr zu schreiben scheint, bei mir dsieht das folgendermaßen aus:

Das programm so 2 eingaben haben

1. für den widerstandswert z.B. 470 Ohm
2. für den toleranzwert z.B. 10 %

daruafhin soll das programm einen grafisch erstellten widerstand ausspucken, mit den richtigen farbringen!

( Erste zahl von den 470 Ohm ... (4) entspricht dem ersten farbring, die zweite (7) dem zweiten, die dritte (0) dem dritten und der toleranzwert (10%) gibt den 4. farbring an. )

Mit der grafischen erstellung hatte ich keine probleme, aber was mir kopfschmerzen bereitet ist, die 470 erst einmal zu extrahieren, so dass ich die einzelnen zahlen den ringen zuordnen kann.

Hat da vielelicht einer eine Idee, wie man dies umsetzen könnte?! (hab auch erst vor kurzem mit c++ angefangen, daher ists noch n bischen schwierig für mich)

Ich bedanke mich für jede Holfe die ich bekomme!

Bye S3rj_T4nKi4n
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.06.2004, 17:52 Uhr
Bruder Leif
dances with systems
(Operator)


Moin!

Der Grund, warum ich nach meinem Post oben nichts mehr geschrieben habe, ist ganz einfach der, dass auf meine Frage keine Antwort gekommen ist. Patentrezepte und Komplettlösungen von Aufgaben erstelle ich nicht, aber wenn Ihr mir einen Vorschlag unterbreitet, wie der Algorithmus in etwa aussehen könnte, und mir sagt, wo es GENAU hängt, helfe ich gerne. Mir ist klar, dass gerade Anfänger Probleme bei der Umsetzung haben, aber ein bisschen Eigeninitiative sollte man beim Programmieren schon voraussetzen. Wenn Ihr mir einen Entwurf präsentiert und damit zeigt, dass Ihr Euch ernsthaft mit dem Problem beschäftigt, helf ich Euch gerne
Ansonsten sehen mir gerade solche Probleme zu sehr nach Hausaufgaben aus der Schule aus, und die werden hier nicht komplett gelöst.
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
26.06.2004, 18:22 Uhr
S3rj_T4nKi4n



Jo also folgendes...

wir haben schon eine möglichkeit bekommen um zwei zahlen zu extrahieren ... aber wenn ich das so in mein prog einfüge, will er das nicht mehr kompilieren.
brauch irgendwie nur mal nen kleinen tip! : /

Das haben wir bekommen:

C++:
int extrahiere (int zahl, int ziffer)
{
if (ziffer == 1 )

    return zahl/10;
    
if (ziffer == 2 )
    return zahl % 10;
    
    return 0;
}




Bye S3rj
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
26.06.2004, 18:46 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


dann zeig doch mal dein programm an der funktion selbst sehe ich keinen fehler
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
26.06.2004, 19:03 Uhr
0xdeadbeef
Gott
(Operator)


Die Funktion läuft allerdings nur mit zweistelligen Zahlen, so viel ist auch klar.

Ich würde das wohl eher so aufbauen:

C++:
unsigned extrahiere_ziffer(unsigned zahl, unsigned ziffer) {
  while(ziffer != 0) {
    --ziffer;
    zahl /= 10;
  }
  return zahl % 10;
}


Das zählt die Ziffern dann von hinten hoch, also wäre z.B.:

C++:
extrahiere_ziffer(1234, 0) == 4
extrahiere_ziffer(1234, 3) == 1
extrahiere_ziffer(1234, 10) == 0


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
26.06.2004, 19:23 Uhr
S3rj_T4nKi4n



Ok hier mein prog, soweit ichs jetzt hab ... die elemente, die Oxdeadbeef gepostet hat hab ich jetzt einfach mal eingefügt incl. dem was ich sonst noch später dafür brauche und noch nicht weiter eingebaut hab .. hab die beiden sachen gekennzeichnet!


C++:
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#include <math.h>

using namespace std;

int main(int argc, char *argv[])
{
float a;




    textcolor (RED);
    textbackground (LIGHTGRAY);
    clrscr ();  

  cout<<"\n";
  cout << "\t   <--==| Farbringenausgabe eines Widerstands |==-->" << endl << endl;             // Überschrift

  cout<<"\t\t  ----------------------------------" << endl << endl <<endl;

  cout<<"Geben sie einen Widerstandswert ein: ";        // Eingabe des WIderstands
    cin>> a;
    
  cout<<"\n";
    
    clrscr ();


// ******************** Bisher nur reingesetzt Anfang**************
   clrscr ();  
};

unsigned extrahiere_ziffer(unsigned zahl, unsigned ziffer) {
  while(ziffer != 0) {
    --ziffer;
    zahl /= 10;
  }
  return zahl % 10;
}




void farbesetzen (int ziffer)

{
    int farbe;
    switch (ziffer)  {
    case 0 : farbe = BLACK; break;
    case 1 : farbe = BROWN; break;
    case 2 : farbe = RED; break;
    case 3 : farbe = LIGHTRED; break;    //Lightred steht für Orange
    case 4 : farbe = YELLOW; break;
    case 5 : farbe = GREEN; break;
    case 6 : farbe = BLUE; break;
    case 7 : farbe = MAGENTA; break;
    case 8 : farbe = DARKGRAY; break;
    case 9 : farbe = WHITE; break;

    default : textcolor (LIGHTBLUE);
    


}
    textcolor (farbe);
};

// ******************** Bisher nur reingesetzt Ende**************
                


    
void grafischWiderstand ();                     //grafische Darstellung des Widerstands Anfang
{





    int i;
    
  cout<<"\t     <--==| Farbringenausgabe des Widerstands |==-->" << endl << endl;             // Überschrift

  cout<<"\t\t    ----------------------------------" << endl << endl <<endl;  
  
  
      textcolor(BLACK);         // Textfarbe
      
      gotoxy (20, 6);
      for (i=1; i<=36; i++) cout<< char (219);    //obere Kante
      gotoxy (20, 11);
      for (i=1; i<=36; i++) cout<< char (219);    //untere Kante
            
      gotoxy (20, 7);
      cout<< char (219);                          //linke Seitenkante Anfang
      gotoxy (20, 8);
      cout<< char (219);  
      gotoxy (9, 9);
      for (i=1; i<=12; i++) cout<< char (219);    //mittlerer Stil links
      gotoxy (20, 10);
      cout<< char (219);
      gotoxy (20, 11);
      cout<< char (219);                          //linke Seitenkante Ende
            
      gotoxy (55, 7);
      cout<< char (219);                         //rechte Seitenkante Anfang
      gotoxy (55, 8);
      cout<< char (219);  
      gotoxy (55, 9);
      for (i=1; i<=12; i++) cout<< char (219);  //mittlerer Stiel rechts
      gotoxy (55, 10);
      cout<< char (219);
      gotoxy (55, 11);
      cout<< char (219);                        //rechte Seitenkante Ende          
      
      gotoxy (24, 7);                           //1. Farbring Anfang
      for (i=1; i<=2; i++) cout<< char (219);                        
      gotoxy (24, 8);
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (24, 9);      
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (24, 10);
      for (i=1; i<=2; i++) cout<< char (219);   //1. Farbring Ende

      gotoxy (29, 7);                           //2. Farbring Anfang
      for (i=1; i<=2; i++) cout<< char (219);                        
      gotoxy (29, 8);
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (29, 9);      
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (29, 10);
      for (i=1; i<=2; i++) cout<< char (219);   //2. Farbring Ende      
      
      gotoxy (34, 7);                           //3. Farbring Anfang
      for (i=1; i<=2; i++) cout<< char (219);                        
      gotoxy (34, 8);
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (34, 9);      
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (34, 10);
      for (i=1; i<=2; i++) cout<< char (219);   //3. Farbring Ende            
      
      gotoxy (39, 7);                           //4. Farbring Anfang
      for (i=1; i<=2; i++) cout<< char (219);                        
      gotoxy (39, 8);
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (39, 9);      
      for (i=1; i<=2; i++) cout<< char (219);  
      gotoxy (39, 10);
      for (i=1; i<=2; i++) cout<< char (219);   //4. Farbring Ende            
};
  
  
  
  
  cout<<"\n";
  cout<<"\n";
  cout<<"\n";
  
  textcolor (RED);
  
  system("PAUSE");    
  return 0;
}




Bye S3rj
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
08.07.2004, 19:18 Uhr
~Mr.TheBrain
Gast


Dieses Programm funzt doch gar nicht schau dir mal die Funktion
extrahiere_ziffer an.

Die übergibst hier Parameter wie ziffer was soll das???

die ziffer muss doch der RG-wert sein
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
08.07.2004, 19:32 Uhr
0xdeadbeef
Gott
(Operator)


Wenn ihr mit conio arbeitet, passt der Thread eigentlich nicht wirklich ins ANSI-Forum. Also:

-->
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ Borland C++ Builder ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: