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

#!/bin/bash
 
# Variablen anlegen
one="Walter"
two="walter"
 
# Vergleichen
if [ "$one" = "$two" ]; then
	# ausgabe, wenn die beiden Strings gleich sind
	echo "$one is equal to $two"
else
	# ausgabe, wenn die beiden Strings nicht gleich sind
	echo "$one is not equal to $two"
fi

C++

#include <iostream>
#include <cstring>
 
int main() {
	// Variablen anlegen
	const char* one = "Walter";
	const char* two = "walter";
 
	// Vergleichen
	if(!strcmp(one, two)) {
		// Ausgabe, wenn die beiden Strings ident sind
		printf("%s%s%s%s", one, " equals ", two, "\n");
	} else {
		// Ausgabe, wenn die beiden Strings nicht ident sind
		printf("%s%s%s%s", one, " equals not ", two, "\n");
	}
}

C#

using System;
 
namespace IfStatements 
{
	class ShowIf
	{
		static void Main() 
		{
			// Variablen anlegen
			string one = "Walter";
			string two = "walter";
 
			// Vergleichen
			if(one.equals(two)) {
				// Ausgabe, wenn die beiden Strings ident sind
				Console.WriteLine(one+" equals "+two);
			} else {
				// Ausgabe, wenn die beiden Strings nicht ident sind
				Console.WriteLine(one+" equals not "+two);
			}
		}
	}
}

Golang

import (
	"fmt"
	"strings"
)
 
// Variablen anlegen
one string = "Walter";
two string = "walter";
 
// Vergleichen
if(strings.Compare(one, two)) {
	// Ausgabe, wenn die beiden Strings ident sind
	fmt.Println("one equals two")
} else {
	// Ausgabe, wenn die beiden Strings nicht ident sind
	fmt.Println("one equals not two")
}

Java

public class HelloWorld {
	public static void main(String[] args) {
		// Variablen anlegen
		String one = new String("Walter");
		String two = new String("walter");
 
		// Vergleichen
		if(one.equals(two)) {
			// Ausgabe, wenn die beiden Strings ident sind
			printf("%s%s%s%s", one, " equals ", two, "\n");
		} else {
			// Ausgabe, wenn die beiden Strings nicht ident sind
			printf("%s%s%s%s", one, " equals not ", two, "\n");
		}
	}
}

Javascript

<!DOCTYPE HTML>
<!-- HTML Grundstruktur -->
<html>
  <body>
    <script>
      // Variablen anlegen
      var one = "Walter";
      var two = "walter";
 
      // Vergleichen
      if(one === two) {
        // Ausgabe, wenn die beiden Strings ident sind
	alert(one+" equals "+two);
      } else {
        // Ausgabe, wenn die beiden Strings nicht ident sind
	alert(one+" equals not "+two);
      }
    </script>
  </body>
</html>

Perl

#!/usr/bin/perl
 
use strict;
use warnings;
 
// Variablen anlegen
my $one = "Walter";
my $two = "walter";
 
// Vergleichen
if($one eq $two) {
	// Ausgabe, wenn die beiden Variablen ident sind
	print $one." equals ".$two."\n";
} else {
	// Ausgabe, wenn die beiden Variablen nicht ident sind
	print $one." equals not ".$two."\n";
}

Python3

#!/usr/bin/python3
 
// Variablen anlegen
one = "Walter";
two = "walter";
 
// Vergleichen
if one == two:
	// Ausgabe, wenn die beiden Strings ident sind
	print(one+" equals "+two)
else:
	// Ausgabe, wenn die beiden Strings nicht ident sind
	print(one+" not equals "+two)

PHP

<?php
 
// Variablen anlegen
$one = "Walter";
$two = "walter";
 
// Vergleichen
if($one === $two) {
	// Ausgabe, wenn die beiden Strings ident sind
	echo "one equals two";
} else {
	// Ausgabe, wenn die beiden Strings nicht ident sind
	echo "one equals not two";
}

switch statements

if.1498566966.txt.gz · Last modified: 2017/06/27 14:36 by gg