Ditt exempel är ju nästan precis samma sak som jag skrev, fast jag använde i istället för tal1 och konstanten 0 istället för variabeln tal2. Alltså blir det:
if (tal1 > tal2)
cout << tal1 << "är större än" << tal2 << endl;
else if (tal2 < tal1)
cout << tal2 << "är större än" << tal1 << endl;
else
cout << "De båda talen är lika stora" << endl;
Det blir samma effekt som om man skriver:
if (tal1 > tal2)
cout << tal1 << "är större än" << tal2 << endl;
else {
if (tal2 < tal1)
cout << tal2 << "är större än" << tal1 << endl;
else
cout << "De båda talen är lika stora" << endl;
}
Vad gäller det där med funktionen så antar jag att den ska ta emot två tal, och sen kolla om de är lika med, större än, eller mindre än varandra. Jag ger dig inte hela koden - du ska få jobba lite också :) - men typ så här:
Först och främst tittar vi på hur din mainfunktion ska se ut. Vi tar bort hela if-konstruktionen och byter ut det mot ett anrop av funktionen som vi ännu inte skrivit:
void main()
{
int tal1;
int tal2;
cout << "Skriv in ett tal: ";
cin >> tal1;
cout << "Skriv in ett tal till: ";
cin >> tal2;
// Anropa funktion som jämför talen
compare_numbers(tal1, tal2);
}
Så, då behöver vi göra en funktion som heter compare_numbers. Allt den ska göra är egentligen att innehålla if-satsen enligt ovan:
void compare_numbers(int tal1, int tal2)
{
// lägg in if-satsen som jämför talen och gör utskrifter
}
Sen behöver vi deklarera funktionen så att vi kan använda den i main(). Deklaration görs med att man bara skriver funktionshuvudet utanför alla funktioner: void compare_numbers(int tal1, int tal2);
Ditt hela program blir då alltså något i stil med:
#include <iostream>
using namespace std;
// Deklarera vår jämförelsefunktion så att vi kan använda den från main
void compare_numbers(int tal1, int tal2);
void main()
{
int tal1;
int tal2;
cout << "Skriv in ett tal: ";
cin >> tal1;
cout << "Skriv in ett tal till: ";
cin >> tal2;
// Anropa funktion som jämför talen
compare_numbers(tal1, tal2);
}
void compare_numbers(int tal1, int tal2)
{
// jämför talen
}