C++: Заполнить массив и исключить элементы входящие в интервал [5,25]

Тоже просто и тоже массивы. Сначала создать массив и его на экран. После этого вывести только те элементы которые не входят в отрезок [5, 25].

Реализация на C++ такая:


// 6.2.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include <stdlib.h>
#include <time.h>

int _tmain(int argc, _TCHAR* argv[])
{
int A[255];
int N;
printf("Enter N: ");
scanf("%d", &N);
for (int i = 0; i<N; i++)
{
A[i] = rand()%100;
printf("%d ", A[i]);
}
printf("\n");
for (int i = 0; i<N; i++)
{
if (!(A[i] >=5 && A[i] <= 25))
{
printf("%d ", A[i]);
}
}
return 0;
}

Самое главное в этой задаче вот это условие:


if (!(A[i] >=5 && A[i] <= 25))
{
printf("%d ", A[i]);
}

Оно сначала гласит, что нужно взять только те элементы, которые входят в отрезок [5, 25]. Далее восклицательный знак вначале говорит об отрицании, значит это условие возьмет все элементы вне этого отрезка. Что нам и нужно.

 

2 Responses

  1. Makarosh 01.07.2013 / 02:18

    У вас в коде ошибка…
    !(A[i] >=5 && A[i] <= 25) — здесь проверяется значение ячейки, а не номер…

Добавить комментарий