Navigace: Hlavní stránka -> Jazyk C -> 04 Cykly -> 04.03 Aritmetický průměr lichých čísel z řady čísel

MENU

04.03 Aritmetický průměr lichých čísel z řady čísel

Zadání:
Sestavte program, který vypočte aritmetický průměr z lichých hodnot ze zadaného počtu čísel.
Řešení:
Zadání vyřešíme použitím cyklu FOR, který bude načítat čísla tolikrát, jakou hodnotu zadáme do proměnné pocet.
Každé zadané číslo testujeme na lichost, jestliže bude jeho hodnota lichá, přičteme ho k součtu a zvýšíme počet lichých
čísel o jedna.
#include "stdafx.h"
#include "math.h"
#include 

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	float prumer,soucet;
    int cislo,pocet,pocetlichych,i;

	printf("Zadejte pocet cisel: ");
	scanf_s("%d",&pocet,1);

    soucet=0;
    pocetlichych=0;

    for (i=1;i<=pocet;i++)
	{
		printf("Zadejte %d.cislo: ",i);
		scanf_s("%d",&cislo,1);
		if (cislo%2==1)
		{
          soucet=soucet+cislo;
          pocetlichych++;
		}
	}

    prumer=soucet/pocetlichych;

    printf("Aritmeticky prumer lichych cisel=%.3f\n",prumer);

	system("pause");
	return 0;
}
program ke stažení
Pro studenty:
Pozor, nesmíte vynechat sekci inicializace proměnných. Do proměnné soucet a pocetlichych MUSÍTE vložit hodnotu 0 (nula), jinak by program dosadil své počáteční hodnoty.
Uvědomte si, že počítače definují nulu jako sudé číslo.

Pro učitele:
Doporučuji ukázat a vysvětlit studentům, jak program zareaguje na nulovou hodnotu v proměnné pocet a na záporné hodnoty v proměnné pocet.
Další problém nastane, pokud nebude zadáno žádné liché číslo.