Delphi-PRAXiS
Seite 1 von 2  1 2   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   ungerade und gerade Zahlen erkennen (https://www.delphipraxis.net/200773-ungerade-und-gerade-zahlen-erkennen.html)

Inkompetent 24. Mai 2019 00:12

ungerade und gerade Zahlen erkennen
 
Hi ich möchte in einem Programm erreichen das es erkennt ob eine erreichte Zahl gerade ist oder ungerade und dann dementsprechend handelt z Bsp mit einem if x=(gerade zahl) then ... Hilfe währe nett ^^

Luckie 24. Mai 2019 00:19

AW: ungerade und gerade Zahlen erkennen
 
http://www.delphibasics.co.uk/RTL.asp?Name=Odd

Inkompetent 24. Mai 2019 00:29

AW: ungerade und gerade Zahlen erkennen
 
danke kann man das auch irgendwie bei komma zahlen benutzen also obs ne komme zahl oder ganze zahl ist

Dalai 24. Mai 2019 00:34

AW: ungerade und gerade Zahlen erkennen
 
Sicher, einfach den Teil nach dem Komma entfernen:
Delphi-Quellcode:
if Odd(Trunc(X)) = ...
Statt Delphi-Referenz durchsuchenTrunc lassen sich auch andere Funktionen zur Umwandlung von Float in Integer nutzen.

Grüße
Dalai

Inkompetent 24. Mai 2019 00:57

AW: ungerade und gerade Zahlen erkennen
 
danke schön ^^

mischerr 24. Mai 2019 07:46

AW: ungerade und gerade Zahlen erkennen
 
Was kennzeichnet eine gerade Zahl? Das sie ohne Rest durch 2 teilbar ist...
Wie kann somit eine Zahl mit Nachkommastellen jemals gerade sein?

DP-Maintenance 24. Mai 2019 07:49

Dieses Thema wurde am "24. May 2019, 08:49 Uhr" von "Daniel" aus dem Forum "Fragen / Anregungen zur DP" in das Forum "Object-Pascal / Delphi-Language" verschoben.

Moombas 24. Mai 2019 09:53

AW: ungerade und gerade Zahlen erkennen
 
Zitat:

Zitat von mischerr (Beitrag 1433017)
Was kennzeichnet eine gerade Zahl? Das sie ohne Rest durch 2 teilbar ist...
Wie kann somit eine Zahl mit Nachkommastellen jemals gerade sein?

Ich glaube das war anders gemeint, daher habe ich das "danke schön ^^ " vom TE bei der letzten Antwort nicht verstanden.

Eine Prüfung könnte aussehen:
Delphi-Quellcode:
//Prüft ob Kommazahl oder ganze Zahl
if x = trunc(x) then
  showmessage('Ganze Zahl')
else
  showmessage('Kommazahl');

//Prüft auf gerade Zahl
if odd(x) then
  showmessage('ungerade Zahl')
else
  showmessage('gerade Zahl');

Neutral General 24. Mai 2019 10:07

AW: ungerade und gerade Zahlen erkennen
 
Deine Gerade/Ungerade Prüfung ist falsch rum. "Odd" bedeuted "Ungerade".

Es wurde zwar schon angedeutet, aber was dein Lehrer wahrscheinlich statt der Funktion Odd() haben wollte ist wahrscheinlich was anderes.
Eine Zahl ist gerade wenn sie ohne Rest durch 2 teilbar ist. In Delphi gibt es den "mod" Operator mit dem du den Rest einer Division erhältst.
D.h. eine andere Art zu prüfen wäre:
Delphi-Quellcode:
if (zahl mod 2) = 0 then // Falls der Rest der Division von der Zahl geteilt durch zwei 0 ist, ist die Zahl gerade
  ShowMessage('Zahl ist gerade')
else
  ShowMessage('Zahl ist ungerade');

mensch72 24. Mai 2019 10:15

AW: ungerade und gerade Zahlen erkennen
 
etwas Hardcore:
in der binären Darstellung einer ganzen Zahl ist das niederwertigste Bit=0

Delphi-Quellcode:
if (zahl and 1) = 0 then
  ShowMessage('Zahl ist gerade')
else
  ShowMessage('Zahl ist ungerade');
(das überfordert aber teils schon manche Lehrer... )


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:14 Uhr.
Seite 1 von 2  1 2   

Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2020 by Daniel R. Wolf