Navigace: Hlavní stránka -> Jazyk C -> 06 Dvojrozměrná pole -> 06.04 Výpočet počtu sudých čísel na diagonálách pole

MENU

06.04 Výpočet počtu sudých čísel na diagonálách pole

Zadání:
Sestavte program, který nageneruje čtvercové pole NxN náhodných čísel a vypočte počet sudých čísel na hlavní a vedlejší diagonále.
Řešení:
Jelikož testujeme hlavní a vedlejší diagonálu ve čtvercovém poli, nemusíme při tomto testu používat dva vnořené
cykly FOR, stačí pouze jeden. Prvky na hlavní diagonále mají pozici (i,i) a prvky na vedlejší diagonále (i,n+1-i).
#include "stdafx.h"
#include "math.h"
#include 
#include 
#include 

using namespace std;

// 06.04  Nageneruje čtvercové pole NxN náhodných čísel a vypočte počet sudých
//        čísel na hlavní a vedlejší diagonále

int _tmain(int argc, _TCHAR* argv[])
{
	int pole[100][100];
    int n,i,j,poceth,pocetv;

	srand((int)time(NULL));

    printf("Zadejte rozmer pole: ");
    scanf_s("%d",&n,1);
   
	for (i=0;i<n;i++)
       for (j=0;j<n;j++)
          pole[i][j]=rand()%100;

	poceth=0;
	pocetv=0;

    for (i=0;i<n;i++)
	{
       if (pole[i][i]%2==0) poceth++;
       if (pole[i][n+1-i]%2==0) pocetv++;
	}

   for (i=0;i<n;i++) 
	{    
		for (j=0;j<n;j++) printf("%3d",pole[i][j]);
       printf("\n");
	}

    printf("Pocet sudych cisel na hlavni diagonale: %d\n",poceth);
    printf("Pocet sudych cisel na vedlejsi diagonale: %d\n\n",pocetv);

    system("pause");
	return 0;
}
program ke stažení