Navigace: Hlavní stránka -> Jazyk C -> 05 Jednorozměrná pole -> 05.01 Hledání pozice zadané hodnoty v poli

MENU

05.01 Hledání pozice zadané hodnoty v poli

Zadání:
Sestavte program, který nalezne v poli náhodných čísel zadanou hodnotu a vypíše její pozice
Řešení:
Pro jednoduchost vyřešíme program na poli o 20 prvcích z intervalu 1..10.
Pomocí prvního cyklu FOR pro proměnnou i nagenerujeme 20 hodnot z intervalu 1..10, vložíme je do pole na příslušné
pozice a zároveň je vytiskneme. V druhém cyklu FOR zkontrolujeme, zda hodnota na pozici i odpovídá hledané
hodnotě. Pokud ano, pozici vytiskneme.
#include "stdafx.h"
#include "math.h"
#include 
#include 
#include 

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	int pole[20];
    int i,h;

	srand((int)time(NULL));

    printf("Zadejte hledanou hodnotu: ");
    scanf_s("%d",&h,1);

    printf("Pole:\n");

    for (i=0;i<20;i++)
	{
       pole[i]=rand()%10+1;
       printf("%d ",pole[i]);
	}

    printf("\nHledane pozice: ");

    for (i=0;i<20;i++) if (pole[i]==h) printf("%d ",i+1);

	printf("\n");

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

Pro studenty:
Generátor náhodných čísel musíme zinicializovat příkazem srand((int)time(NULL)), jinak by program tisknul pokaždé stejný výsledek.