Il programma è funzionante, ma c'è un errore che non riesco a capire, io avvio il programma, si legge l'introduzione e dopo si aspetta 5 secondi per pensare alla domanda e poi si avvia l'estrazione delle rune ma nel runtime il programma si comparta in questo modo: si aspetta 5 secondi e poi scrive sia l'introduzione che l'estrazione tutto insieme. come posso fare, l'errore non lo vedo. Grazie

codice:
/*Programma che serve nella lancio e lettura delle tre Rune celtiche, antico metodo di divinazione degli antichi popoli nordici che tramite delle 
pietre incise riuscivano a leggere ne futuro prossimo di una persona interpretando i segni degli dei del valhalla.

Autore: Luca Pucillo, allievo Istituto Tecnico Industriale Alessando Volta di Guidonia (RM) 3°A Informatico.
Inizio realizzazione 5 Maggio 2007 alle 10:50.*/

#include <iostream.h>
#include <time.h>
#include <stdlib.h>

unsigned int rune(void);//funzione che regola i numeri che vengono estratti in maniera pseudorandomica
void divinazione (unsigned int);//funzione che serve per determinare le rune estratte e i loro significati

int main ()
{
	unsigned int randomico1;
	unsigned int randomico2;
	unsigned int randomico3;
	unsigned int tempo;
	unsigned int tempo1;

	cout<<"Lettura delle rune \n";
	cout<<"Pensate ad una domanda intensamente \n";
	cout<<"By Inquisitore_Fanatico90 \n \n";
	srand (time (NULL));	
	tempo=time(NULL)+5;
	do
	{
		tempo1=time(NULL);
		if(tempo==tempo1)
		{
			randomico1=rune();
			randomico2=rune();
			randomico3=rune();
			divinazione(randomico1);
			divinazione(randomico2);
			divinazione(randomico3);
			cout<<"Inquisitore_Fanatico90 vi ringrazia e vi prega di lasciare un obolo nel suo cappello per i servigi resi \n";
			return 0;
		}
	}while(1);
}

unsigned int rune ()
{
	unsigned int randomic;

	randomic=rand()%25+1;
	return randomic;
}

void divinazione (unsigned int rando)
{
	switch (rando)
	{
	case 1:
........ (non scrivo i case perchè sono 25 e poi non servono, non ci sono errore di sintassi, questo ve lo posso assicurare)