Laboratoria nr 5 program nr 1

Operatory relacyjne (porównania). Operatory logiczne. Wyrażenia logiczne. Przykłady obliczania wartości wyrażeń logicznych. Instrukcja warunkowa if. Zagnieżdżanie if-else. Operator warunkowy ? :. Instrukcja wyboru wielowariantowego switch. Stałe zadeklarowane jako const. Operatory bitowe. Przykłady kodu w C/C++.

#include "stdafx.h"
#include <iostream>

// Biblioteka odpowiedzialna za obsluge znakow. S. Prat str. 261
#include <cctype>

// Biblioteka odpowiedzialna za konwersje http://www.cplusplus.com/reference/clibrary/cstdlib/
#include <stdlib.h>

/**
*
* Program Główny prezentujący funckje C++ wyprowadzania treści na wyjście konsoli.
* Wprowadzanie danych do programu i podstawowe operacje arytmetyczne.
* Program do wybierania osob z podanej listy osob na podstawie zadanego kryterium.
*
* @author Marcin Mirończuk
*
*/
int main()
{
	// Pierwsza litera imienia
	char znak;
	
	// Numer porzadkowy
	int listNumber;

	std::cout << "Lista moich znajomych" << std::endl;
	std::cout << "1. Ala Marciniak" << std::endl;
	std::cout << "2. Genowefa Pigwa" << std::endl;
	std::cout << "3. Aleksander Kłopotek" << std::endl;
	std::cout << "4. Irena Michalska" << std::endl;
	std::cout << "5. Irek Niedzwiedzki" << std::endl;

	std::cout << "Podaj numer porzadkowy z listy znajomych albo pierwsza litere imienia aby zobaczyc telefon kontaktowy" << std::endl;

	// Pobranie znaku z konsoli
	std::cin.get(znak);

	// Sprawdzenie czy wprowadzono znak ktory jest litera
	if(isalpha(znak)) {
		switch (znak) {
			case 'A' :	std::cout << "Twoi znajomi na litera A wraz z numerami telefonow" << std::endl;
						std::cout << "1. Ala Marciniak: telefon 789 876 000" << std::endl;
						std::cout << "2. Aleksander Kłopotek: telefon 423 876 000" << std::endl;
					break;
			case 'G' :
						std::cout << "Twoi znajomi na litera G wraz z numerami telefonow" << std::endl;
						std::cout << "1. Genowefa Pigwa: telefon 789 826 100" << std::endl;
					break;
			case 'I' :
						std::cout << "Twoi znajomi na litera I wraz z numerami telefonow" << std::endl;
						std::cout << "1. Irena Michalska: telefon 789 234 100" << std::endl;
						std::cout << "2. Irek Niedzwiedzki: telefon 146 876 000" << std::endl;
					break;
			default :
					std::cout << "Brak znajomych zaczynajacych sie na podana przez Ciebie litere" << std::endl;
					break;
		}
	}
	// Sprawdzenie czy wprowadzono znak ktory jest liczba dziesietna (0-9)
	else if(isdigit(znak)) {
		// Konwersja znku na int
		listNumber = atoi(&znak);

		switch (listNumber) {
			case 1 :	std::cout << "Twój znajomy z pierwszej pozycji listy kontaktów" << std::endl;
						std::cout << "1. Ala Marciniak: telefon 789 876 000" << std::endl;						
					break;
			case 2 :
						std::cout << "Twój znajomy z drugiej pozycji listy kontaktów" << std::endl;
						std::cout << "1. Genowefa Pigwa: telefon 789 826 100" << std::endl;						
					break;
			case 3 :
						std::cout << "Twój znajomy z trzeciej pozycji listy kontaktów" << std::endl;
						std::cout << "1. Aleksander Kłopotek: telefon 423 876 000" << std::endl;						
					break;
			case 4 :
						std::cout << "Twój znajomy z czwartej pozycji listy kontaktów" << std::endl;
						std::cout << "1. Irena Michalska: telefon 789 234 100" << std::endl;
					break;
			case 5 :
						std::cout << "Twój znajomy z piątej pozycji listy kontaktów" << std::endl;						
						std::cout << "1. Irek Niedzwiedzki: telefon 146 876 000" << std::endl;
					break;
			default :
					std::cout << "Brak znajomych na liscie wedlug podanego przez Ciebie numeru porzadkowego" << std::endl;
					break;
		}
	}
	else {
		std::cout << "Podano niestandardowy znak";
	}

	std::cin.get();
	std::cin.get();

	return 0;
}

Skomentuj ten wpis