Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Die letzen beiden Zahlen aus einem String ausschneiden
Frong
myCSharp.de - Member



Dabei seit:
Beiträge: 2

Themenstarter:

Die letzen beiden Zahlen aus einem String ausschneiden

beantworten | zitieren | melden

Hi,

mit meinem ersten Post habe ich direkt mal eine Anfängerfrage. Nämlich wie sich die letzten beiden Zaheln eines Strings (Int32) ausschneiden lassen. Ich habe z.B. den Wert 19999 welcher jetzt aber zu 199,99 werden soll. Das Problem ist jetzt, dass die Zahlen immer unterschiedlich lang sein können, also muss ich von hintern anfangen. Wie lässt sich das einrichten? Ansonsten könnte man ja Substring verwenden ...
Das ganze brauche ich für die Schule, wir fangen so langsam an zu Schreiben ...
Mein Vorteil ist es, das ich vorher schon etwas PHP konnte. Auch wenn das schon um einiges anders ist ...

Und ja, ich weiß wie oft diese Frage schon gestellt wurde, finde nur nichts. Danke :)

mfg. Frong
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Frong am .
In A Gadda Da Vida, Honey ...
private Nachricht | Beiträge des Benutzers
Tomot
myCSharp.de - Member

Avatar #avatar-2678.jpg


Dabei seit:
Beiträge: 706
Herkunft: Düsseldorf

beantworten | zitieren | melden

Hallo.

Ich nehme mal an, das es dir um die Ausgabe der Zahl geht. (weil 199,99 kein Integer ist)
Dann sollte string.Format() die richtige Methode sein. Dort kannst du ein Pattern übergeben, mit dem die Zahl formatiert wird.

Siehe: String.Format-Methode (String, Object)
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Tomot am .
mit freundlichen Grüßen,
Tomot

Projekte: www.gesellschaftsspieler-gesucht.de
private Nachricht | Beiträge des Benutzers
Ploetzi
myCSharp.de - Member

Avatar #avatar-2940.gif


Dabei seit:
Beiträge: 320

loesung

beantworten | zitieren | melden

Eine andere Methode waere:


string x="199999";
string y=(Convert.ToDouble(x)/100).ToString();
private Nachricht | Beiträge des Benutzers
Frong
myCSharp.de - Member



Dabei seit:
Beiträge: 2

Themenstarter:

beantworten | zitieren | melden

Danke für die schnellen Antwoten. Habe noch garnicht damit gerechnet. Und noch weniger damit nicht angemeckert zu werden.

Die Lösung von Ploetzi war super, nur das man aus irgendeinem Grund das ganze durch 1000 teilen muss, anstat durch 100 ... Und wieso wird das Komma von selbst gesetzt?

Das ganze sollte übrigens eine Art Kasse werden. Mein COde sieht in etwar so aus und funktioniert auch soweit super.

using System;


int eing;
string sum = "0";

do
{
    eing = Convert.ToInt32(Console.ReadLine());
    sum = sum + eing;
}
while (eing != 000);

sum = (Convert.ToDouble(sum) / 1000).ToString();

Console.WriteLine("-------------------------");
Console.WriteLine("Summe Gesammt: " + sum + " Euro");

Console.ReadLine();

Aber wirklich danke für die Super Antworten.
In A Gadda Da Vida, Honey ...
private Nachricht | Beiträge des Benutzers
Lars Schmitt
myCSharp.de - Experte

Avatar #avatar-2240.jpg


Dabei seit:
Beiträge: 2335
Herkunft: Witten

beantworten | zitieren | melden

Hallo Frong und Herzlich Willkommen hier im Forum,
Zitat
nur das man aus irgendeinem Grund das ganze durch 1000 teilen muss, anstat durch 100


rein Mathematisch wäre durch 100 richtig

denn 199999 / 100 wäre 1999,99

warum du Durch 1000 Teilen solltest, ist mir echt ein Rätsel

des weiteren, könntest Du mir bitte erklären was Du mit
Zitat
Und wieso wird das Komma von selbst gesetzt?

Double ist halt ein Fließkomma Typ, und der hat halt auch ein , drin

Herzliche Grüße
Lars
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 52329
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Frong,
Zitat
Habe noch garnicht damit gerechnet. Und noch weniger damit nicht angemeckert zu werden.
angemeckert wirst du auch von mir nicht. Nur freundlich auf [Hinweis] Wie poste ich richtig? Punkt 1.1.1. hingewiesen und um Beachtung gebeten. Vielen Dank!

herbivore
private Nachricht | Beiträge des Benutzers