User Tools

Site Tools


if

This is an old revision of the document!


Verzweigungen

Verzweigungen sind äußerst elementar. Eine Programmiersprache ohne Verzweigungen ist nicht benutzbar. Wie immer gibt es verschiedene Typen. Das grundlegende if – elseif – else Konstrukt oder ein seltener verwendetes switch. Grundsätzlich kann man mit den if - elseif - else Konstrukten alle Fälle abdecken, ein switch hat aber in wenigen Fällen Vorteile was die Lesbarkeit und Laufzeitgeschwindigkeit angeht.

Das sprachliche Äquivalent wäre wenn - dann.

An ein if kann in den meisten Fällen ein else if und/oder ein else angehängt werden. Beispiel in Pseudocode:

if ( ich bin grösser, als du ) {
	ausgabe: “Ich bin grösser, als du“
} else if ( ich bin schwerer als du ) {
	ausgabe: “Ich bin kleiner, als du und schwerer, als du“
} else {
	ausgabe: “Ich bin kleiner, als du und leichter, als du“
}

Oft können Bedingungen mit und/oder (und vielem mehr) verknüpft werden. Beispiel in Pseudocode:

if ( ich bin grösser, als du UND ich bin schwerer, als du ) {
	ausgabe: “Ich bin grösser und schwerer, als du“
} else {
	ausgabe: “Ich bin kleiner, als du oder ich bin leichter, als du oder beides“
}

Alle folgenden Beispiele machen wieder das selbe. Zwei strings werden verglichen. Alle Beispiele liefern das selbe Ergebnis. Nämlich, dass die strings nicht ident sind.

if-elseif-else Konstrukte

Bash

one="Walter"
two="walter"
if [ "$one" = "$two" ]; then
	echo "one is equal to two"
else
	echo "one is not equal to two"
fi

C++

char* one = "Walter";
char* two = "walter";
if(strcmp(one, two) {
	println("one equals two");
} else {
	println("one equals not two");
}

C#

string one = "Walter";
string two = "walter";
if(one.equals(two)) {
	Console.WriteLine("one equals two");
} else {
	Console.WriteLine("one equals not two");
}

Golang

import (
	"fmt"
	"strings"
)
one string = "Walter";
two string = "walter";
if(strings.Compare(one, two)) {
	fmt.Println("one equals two")
} else {
	fmt.Println("one equals not two")
}

Java

String one = new String("Walter");
String two = new String("walter");
if(one.equals(two)) {
	System.out.println("one equals two");
} else {
	System.out.println("one equals not two");
}

Javascript

var one = "Walter";
var two = "walter";
if(one === two) {
	alert("one equals two");
} else {
	alter("one equals not two");
}

Perl

my $one = "Walter";
my $two = "walter";
if($one eq $two) {
	print "one equals two";
} else {
	print "one equals not two";
}

Python3

one = "Walter";
two = "walter";
if one === two:
	print("one equals two")
else:
	print("one not equals two")

PHP

$one = "Walter";
$two = "walter";
if($one === $two) {
	echo "one equals two";
} else {
	echo "one equals not two";
}

switch statements

if.1498563137.txt.gz · Last modified: 2017/06/27 13:32 by gg