Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   C# was ähliches wie odd (https://www.delphipraxis.net/42557-c-aehliches-wie-odd.html)

kiar 20. Mär 2005 19:57


C# was ähliches wie odd
 
hallo,

suche in c# eine möglichkeit, die mir die funktion odd nachempfindet :wall:

bin ich zu blöd zum suchen, oder muss ich was eigenes schreiben?

danke
[OT]
edit // bayern wieder erster :duck:
sorry aber musste sein [/OT]

Robert_G 20. Mär 2005 20:12

Re: C# was ähliches wie odd
 
Du hast eine Möglichkeit. eine direkte funktion liefern die Typen nicht mit.
Ein einfaches prüfen mit dem Modulus Operator % reicht mir in solchen Fällen aus. ;)
Code:
int zahl = 5;
int zwei = 2;

if (zahl % zwei == 0)
  Console.WriteLine("{0} ist gerade", zahl);
else
  Console.WriteLine("{0} ist ungerade", zahl);
Edit:
Wobei das schon cool wäre...
Code:
if (1.IsOdd)...
if(2.IsOdd)...
// oder
zahl.IsOdd...
Jupp, das hätte was... :)

Hansa 20. Mär 2005 20:47

Re: C# was ähliches wie odd
 
Wozu dient denn der Operator % ? Kann ich damit leicht ein Verhältnis zwischen 2 Zahlen darstellen, oder was soll der machen ? Mit ungeraden/geraden Zahlen wird das wohl hoffentlich nichts zu tun haben. 8)

alcaeus 20. Mär 2005 20:47

Re: C# was ähliches wie odd
 
Das % entspricht dem mod aus Delphi und liefert den Rest bei einer ganzzahligen Division

Greetz
alcaeus

Hansa 20. Mär 2005 20:54

Re: C# was ähliches wie odd
 
Und == heißt dann mehr als gleich, also quasi tja, da fällt mir jetzt nichts mehr ein. Gleich oder eben nicht ? Womöglich heißt es in C sogar "ungleich". Aber das war doch !=, allerdings ohne Gewähr. Also "sehr gleich" immerhin mit Ausrufezeichen und "=" ! :gruebel: :lol:

Aenogym 20. Mär 2005 21:00

Re: C# was ähliches wie odd
 
Zitat:

Zitat von Hansa
Und == heißt dann mehr als gleich, also quasi tja, da fällt mir jetzt nichts mehr ein. Gleich oder eben nicht ? Womöglich heißt es in C sogar "ungleich". Aber das war doch !=, allerdings ohne Gewähr. Also "sehr gleich" immerhin mit Ausrufezeichen und "=" ! :gruebel: :lol:

soweit ich weiß ist == der vergleichsoperator und = der zuweisungsoperator ;)

Alexander 20. Mär 2005 21:05

Re: C# was ähliches wie odd
 
Zitat:

Zitat von Aenogym
Zitat:

Zitat von Hansa
Und == heißt dann mehr als gleich, also quasi tja, da fällt mir jetzt nichts mehr ein. Gleich oder eben nicht ? Womöglich heißt es in C sogar "ungleich". Aber das war doch !=, allerdings ohne Gewähr. Also "sehr gleich" immerhin mit Ausrufezeichen und "=" ! :gruebel: :lol:

soweit ich weiß ist == der vergleichsoperator und = der zuweisungsoperator ;)

Genau :-D
Also == ist in Delphi = und = ist in Delphi :=

Hansa 20. Mär 2005 21:05

Re: C# was ähliches wie odd
 
Zitat:

Zitat von Aenogym
...soweit ich weiß ist == der vergleichsoperator und = der zuweisungsoperator ;)

Was ist denn dann x !:= 1&%/1 ? Könnte es so was tatsächlich geben ? :lol:

Robert_G 20. Mär 2005 21:06

Re: C# was ähliches wie odd
 
Wäre ja auch was ganz neues gewesen...
Wenn Hansa etwas C# Code gesehen, nicht kapiert und _keinen_ dummen Spruch abgelassen hätte.
thx Hansa, damit hast du mal wieder mein Weltbild gerettet. :mrgreen:

Aenogym 20. Mär 2005 21:40

Re: C# was ähliches wie odd
 
Zitat:

Zitat von Hansa
Zitat:

Zitat von Aenogym
...soweit ich weiß ist == der vergleichsoperator und = der zuweisungsoperator ;)

Was ist denn dann x !:= 1&%/1 ? Könnte es so was tatsächlich geben ? :lol:

nein ^^

bigg 20. Mär 2005 22:01

Re: C# was ähliches wie odd
 
Warum schreibt ihr euch keine Funktion "ODD()"?

Robert_G 20. Mär 2005 22:13

Re: C# was ähliches wie odd
 
Zitat:

Zitat von bigg
Warum schreibt ihr euch keine Funktion "ODD()"?

Mir ist es erst 5-mal über den Weg gelaufen. Und dafür extra eine Klasse anlegen? :gruebel: ... nö :P
Falls ich es mehr als einmal in einem Projekt brauchen würde -> sicher.

Hansa 21. Mär 2005 00:31

Re: C# was ähliches wie odd
 
Zitat:

Zitat von Robert_G
...thx Hansa, damit hast du mal wieder mein Weltbild gerettet. :mrgreen:

nichts zu danken. Mach ich doch gerne. :mrgreen: Aber das tut nichts zur Sache. 8) Wie sieht die ODD Funktion denn jetzt unter C aus ?

bigg 21. Mär 2005 00:34

Re: C# was ähliches wie odd
 
PHP:
Code:
function Odd($i){
return ($i % 2);
}
In C sollte es fast genauso sein.
Nur die Variablen werden anders aussehen. :angel2:

dizzy 21. Mär 2005 01:03

Re: C# was ähliches wie odd
 
Code:
public boolean ODD(int value)
{
  if ((value % 2) == 0)
    return true;
  else
    return false;
}
PS: Bin in C# noch nicht so "casting-fest". Boolean kann imho aber ausschließlich true/false sein, und hat keine numerische Entsprechung wie in C(++)/Delphi/...
Keine Ahnung ob man das trotzdem irgendwie ohne "if" umwurschteln kann.

Robert_G 21. Mär 2005 06:40

Re: C# was ähliches wie odd
 
Man kann in C# keine losen Funtionen in der Gegend rumvegitieren lassen.
Entweder man braucht es innerhalb einer Klasse offt, dann kann man sich natürlich dort schnell diese Funktion ranbatschen. oder man braucht es zusammen mit anderen, ähnlichen Funktionnen sehr oft, dann kann man sich eine Klasse anlegen, die das als statische Funktion enthält.

Nachtrag:
Zitat:

Zitat von dizzy
Keine Ahnung ob man das trotzdem irgendwie ohne "if" umwurschteln kann.

Das wäre einfach ein Einzeiler... ;)
Code:
statis bool Odd(int value)
{
  return (value % 2) == 0;
}

Pseudemys Nelsoni 21. Mär 2005 08:02

Re: C# was ähliches wie odd
 
eher so:

Delphi-Quellcode:
static bool Odd(int value)

  return (value % 2) != 0;
}

dizzy 21. Mär 2005 16:09

Re: C# was ähliches wie odd
 
Zitat:

Zitat von Robert_G
Das wäre einfach ein Einzeiler... ;)
Code:
statis bool Odd(int value)
{
  return (value % 2) == 0;
}

Das geht? Ja fein... unser, zugegebenermaßen wirklich inkompetenter Prof hat uns weiss machen wollen, dass ein bool NUR true/false halten kann, und eine 1/0-Entsprechung nicht gälte. Wirklich vorstellen konnte ich mir das auch nicht, aber probiert hab ich's bisher genausowenig ^^.

Pseudemys Nelsoni 21. Mär 2005 16:19

Re: C# was ähliches wie odd
 
Es wird doch auch True bzw False zurück gegeben, ich versteh grad nich was du meinst <g>

neolithos 21. Mär 2005 16:21

Re: C# was ähliches wie odd
 
Code:
public static bool IsOdd(int iValue)
{
  return iValue & 1 == 0;
}
ist etwas Prozessorfreundlicher.

Pseudemys Nelsoni 21. Mär 2005 16:26

Re: C# was ähliches wie odd
 
es muss aber != sein und nicht ==

im oberen jedenfalls..

Robert_G 21. Mär 2005 16:27

Re: C# was ähliches wie odd
 
Mönsch Dizzy...
In der If Clause prüfst du doch auch bool'sche Ausdrücke. ;)

Bevor du's nicht glaubst... :P
Notepad auf und das hier rein:
Code:
using System;

internal class Program
{
   static bool Odd(int value)
   {
      return (value % 2) != 0;
   }

   public static void Main(params string[] args)
   {
      foreach (string argument in args)   
      {
         int zahl = int.Parse(argument.Trim());
         Console.WriteLine("{0} ist ungerade? -> {1}", zahl, Odd(zahl));
      }
   }
}
...und als Test.cs abspeichern.
Jetzt einfach das in der commandozeile eingeben und testen:
Code:
F:\>csc Test.cs
Microsoft (R) Visual C# .NET Compiler version 7.10.6001.4
for Microsoft (R) .NET Framework version 1.1.4322
Copyright (C) Microsoft Corporation 2001-2002. All rights reserved.


F:\>Test.exe 1 2 3 4 5 6 7 8 9 0
1 ist ungerade? -> True
2 ist ungerade? -> False
3 ist ungerade? -> True
4 ist ungerade? -> False
5 ist ungerade? -> True
6 ist ungerade? -> False
7 ist ungerade? -> True
8 ist ungerade? -> False
9 ist ungerade? -> True
0 ist ungerade? -> False
Und ja, natürlich hat Pseudo recht. Ich hatte das doch nur schnell hingetippt. :oops:

dizzy 22. Mär 2005 00:33

Re: C# was ähliches wie odd
 
Zitat:

Zitat von Robert_G
Mönsch Dizzy...
In der If Clause prüfst du doch auch bool'sche Ausdrücke. ;)

:wall: Ich möchte fortan in diesem Thread ignoriert werden. Ihr dürft mich auch hauen... :roll:
Hab mich voll verguckt...

bigg 22. Mär 2005 06:08

Re: C# was ähliches wie odd
 
Zitat:

Zitat von dizzy
Zitat:

Zitat von Robert_G
Mönsch Dizzy...
In der If Clause prüfst du doch auch bool'sche Ausdrücke. ;)

:wall: Ich möchte fortan in diesem Thread ignoriert werden. Ihr dürft mich auch hauen... :roll:
Hab mich voll verguckt...

Dizzy wurde in Biggs Ignore-Liste aufgenommen :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:57 Uhr.

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