WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

 
 
Themen-Optionen Ansicht
Alt 10.04.2002, 07:37   #14
pc.net
Aussteiger
 
Benutzerbild von pc.net
 
Registriert seit: 07.10.2001
Ort: Nettistan
Beiträge: 12.997

Mein Computer

Standard

hab auch erlaubt a bisserl rumzupfuschen ... (funktioniert jetzt auch bei einem doppelklick auf die .exe )

Code:
#include <stdio.h>
#include <conio.h>

int main()
{
  unsigned short usLower = 0;
  unsigned short usUpper = 0;
  unsigned short usQuery = 0;
  unsigned short usChar = 0;

  // Zu behandelndes Intervall abfragen
  printf("\nIntervall Untergrenze eingeben: ");
  scanf("%d", &usLower);
  printf("\nIntervall Obergrenze eingeben: ");
  scanf("%d", &usUpper);

  if (usLower == usUpper)
  {
    printf("\nUnter und Obergrenze sind gleich!");
    getch();
    return(0);
  } // if

  // diese konstruktion ist nicht besonders elegant. aber fuer diese zwecke reichts alle mal

  while (1)
  {
    // ungefaehre haelfte des intervalls ermitteln
    usQuery = usLower + (usUpper - usLower) / 2;

    printf("\nIst die Zahl groesser (g), kleiner (k) oder gleich (e) %d", usQuery);
    usChar = getch();

    // ist die Zahl schon gefunden?
    if ((usUpper - usLower) == 2)
    {
      printf("\nDie gesuchte Zahl ist %d", usQuery);
      break;
    } // if

    switch (usChar)
    {
      case 'g':     // die Zahl ist groesser
                    usLower = usQuery;
                    break;
      case 'k':     // die Zahl ist kleiner
                    usUpper = usQuery;
                    break;
      case 'e':     // die Zahl ist gefunden
                    printf("\nDie gesuchte Zahl ist %d", usQuery);
                    break;
      default:
                    printf("\nUngueltige Eingabe. Programm wird beendet!");
                    break;
    } // switch
  } // while
  getch();
  return(0);
} // main
gruß
pc.net
____________________________________
Praktizierender Eristiker

No hace falta ser un genio para saber quién dijo eso.
Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein.
pc.net ist offline   Mit Zitat antworten
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:18 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag