All pastes #756155 Raw Edit

Jarno Kurlin

public text v1 · immutable
#756155 ·published 2007-10-31 06:46 UTC
rendered paste body
/*********************************************************************
*ohjelma, jossa lasketaan kymmenen Suomen kaupungin lämpötilojen keskiarvo. 
*Lisäksi ohjelmassa lasketaan koko maan ”karkea” keskiarvo annettujen lämpötilalukemien perusteella.
*Tekijä: Jarno Kurlin
*Ryhmä: Tie07a
*PVM: 08.10.2007
**********************************************************************/

#include <stdio.h>
#include <conio.h>
#include <locale.h>

#define TAULUKOKO 11
int main(void)
{
setlocale(LC_ALL, "Finnish");

double KAUPLKM[TAULUKOKO];
double LÄMMÖT[TAULUKOKO];
double maankeskiarvo,ka_summa,lampotila,kaup_ka;     /*koko maan keskiarvo, kaupunkien lämpötilojen summa keskiarvoa varten, kaupungin lämpötila, yksittäisen kaupungin keskiarvo*/
int i,kaupunki,nollaus,jakaja;

	printf("**Ohjelma laskee syöttämiesi kaupunkien lämpötilojen keskiarvon sekä koko maan karkean keskiarvon **\n\n");
	printf("Syötä kaupungin numero jonka lämpötilan haluat ilmoittaa: \n1 – Helsinki\n2 – Kuopio\n3 – Lahti\n4 – Lappeenranta\n5 – Maarianhamina\n6 – Mikkeli\n7 – Oulu\n8 – Rovaniemi\n9 – Savonlinna\n10 – Turku\n");
    kaupunki = 1;
	ka_summa = 0;
	maankeskiarvo = 0;
	jakaja = 0;
	for (nollaus = 0; nollaus < TAULUKOKO; nollaus++) /*Nollataan taulut*/
	{
		LÄMMÖT[nollaus] = 0;
		KAUPLKM[nollaus] = 0;
	}

	while ( kaupunki != 99)
	{
		printf("Syötä Kaupungin numero: ");
		scanf("%d",&kaupunki);
		switch (kaupunki)
		{
			case 0:
				printf("1 – Helsinki\n2 – Kuopio\n3 – Lahti\n4 – Lappeenranta\n5 – Maarianhamina\n6 – Mikkeli\n7 – Oulu\n8 – Rovaniemi\n9 – Savonlinna\n10 – Turku\n");
				break;
			case 1: 
				printf("***Syötä Helsingin %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
			    break;
			case 2:
				printf("***Syötä Kuopion %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 3:
				printf("***Syötä Lahden %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 4:
				printf("***Syötä Lappeenrannan %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 5:
				printf("***Syötä Maarianhaminan %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 6:
				printf("***Syötä Mikkelin %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 7:
				printf("***Syötä Oulun %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 8:
				printf("***Syötä Rovanimen %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 9:
				
				printf("Syötä Savonlinnan %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			case 10:
				printf("Syötä Turun %0.0lf. lämpötila: ", KAUPLKM[kaupunki]+1);
				scanf("%lf",&lampotila);
				LÄMMÖT[kaupunki] = LÄMMÖT[kaupunki] + lampotila;
				KAUPLKM[kaupunki]++;
				break;
			
			case 99: /*Pois switchin sisältä*/
				break;
			default:
				printf("\nVäärä valinta, tulosta kaupunkilistaus syöttämällä 0 tai jatka syöttämällä kaupungin numero: ");
		    break;

		}
		
	}
	printf("\nKaupunkien keskilämpötilat ovat:\n");
	
			for (i = 1; i < TAULUKOKO; i++) /*tulostetaan kaupunkien keskiarvot*/
			{
			
				if (LÄMMÖT[i] != 0) /*Tarkastetaan onko kaupungille määritetty yhtään lämpötilaa*/
				{
					kaup_ka = LÄMMÖT[i]/KAUPLKM[i];
					printf("%d. %0.2lf\n",i,kaup_ka);
					ka_summa = kaup_ka + ka_summa; 
					jakaja++;			/*Määritetään kuinka monelle kaupungille on annettu lämpötila-arvoja*/
				}
				else 
				{
					printf("%d. Ei syötettyjä lämpötiloja\n",i);
				}
				
				
			}
			
	maankeskiarvo = ka_summa/jakaja;
	printf("\n\nlämpötilojen keskiarvo koko maassa on %0.2lf",maankeskiarvo);
	

getch();
return 0;
}