Molarberegning...

Tags:    delphi

Jeg vil høre om der er nogen, der har et godt forslag til, hvordan jeg laver en funktion, der kan løse følgende problem:

Når brugeren indtaster et stof, fx 'h2o' i en Tedit, skal programmet komme med den molare masse.

Dels skal den altså vide, at H2O består af 2 H'er og 1 O, og dels omregne hvert bogsav til en given værdi (atommassen).
Hvordan får man den til at læse en grundstofsforkortelse som fx 'Na', som een ting?

Håber spørgsmålet er forstået - lidt svært at forklare - og nogen har tid og lyst til at hjælpe :)

Med Venlig Hilsen
Søren Jensen



3 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Jeg vil høre om der er nogen, der har et godt forslag til, hvordan jeg laver en funktion, der kan løse følgende problem:

Når brugeren indtaster et stof, fx 'h2o' i en Tedit, skal programmet komme med den molare masse.

Dels skal den altså vide, at H2O består af 2 H'er og 1 O, og dels omregne hvert bogsav til en given værdi (atommassen).
Hvordan får man den til at læse en grundstofsforkortelse som fx 'Na', som een ting?

Håber spørgsmålet er forstået - lidt svært at forklare - og nogen har tid og lyst til at hjælpe :)

Med Venlig Hilsen
Søren Jensen


Du laver to strings, AktueltAtom og Antal. Antal starter med at være=1.

Løb strengen igennem og se på de enkelte tegn. Læs 1. tegn. Det er et stort bogstav og set AktueltAtom=tegnet. Læs næste tegn. Er det et lille bogstav, tilføjes det til AktueltAtom. Er det et tal sættes Antal=tegnet. Er næste tegn et tal, tilføjes det til Antal. Er næste tegn et stort bogstav, er du ved starten på et nyt atom. Det vil sige at du kan sige masse = masse + (atommasse[AktueltAtom]*strtoint(Antal)), Sætte AktueltAtom=tegnet og Antal=1 og fortsætte.

Håber det giver bare lidt mening

/data



Jeg vil høre om der er nogen, der har et godt forslag til, hvordan jeg laver en funktion, der kan løse følgende problem:

Når brugeren indtaster et stof, fx 'h2o' i en Tedit, skal programmet komme med den molare masse.

Dels skal den altså vide, at H2O består af 2 H'er og 1 O, og dels omregne hvert bogsav til en given værdi (atommassen).
Hvordan får man den til at læse en grundstofsforkortelse som fx 'Na', som een ting?

Håber spørgsmålet er forstået - lidt svært at forklare - og nogen har tid og lyst til at hjælpe :)

Med Venlig Hilsen
Søren Jensen

Du kunne istedet for at skrive h2o så adskille hver isotop med et mellem rum så det bliver f.eks H2 O...
-
neuroman? det' da mig :D
Aloha - Er du fresh???



Kan du ikke bare lave en lang if liste

if edit1.text = H20
then edit2.text := Vand
else
begin
if edit1.text = Na
then Edit2.text := Natrium
else
begin
If edit1.text = HCl
Then edit2.text := SaltSyre


Håber det Kan hjælpe



t