Задачи замены в массивах

Задачи замены в массивах предполагают решение задачи на поиск с последующим изменением найденных значений. В основе решения таких задач лежит поисковые алгоритмы с выбором подходящей схемы перебора.

Пример 3. Дан одномерный целочисленный массив, заданный случайными числами на промежутке [-50; 50).Заменить в массиве все отрицательные элементы им противоположными.

Для решения задачи выполним просмотр массива с начала. Каждый элемент сравним с нулем, при этом отрицательные заменим противоположными (if (x[i]<0) x[i]=-x[i]). В данной задаче целесообразно выполнить вывод массива дважды: до и после замены.

//Замена отрицательных элементов противоположными

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

//подключение модуля для генератора случайных чисел

#define max 100

 

void gen (int k, int a, int b,int x[max]);

//прототип функции генерации массива

void out (int k, int x[max]);

//прототип функции вывода массива

void zamena (int k, int x[max]);

//прототип функции замены

 

void main (){

int mas[max];

int n;

do {

printf("\nВведите количество элементов массива n

(n<=100): ");

scanf ("%d",&n);

}

while (n>max);

gen(n,-50,50,mas);

printf("Вывод сгенерированного массива из %d элементов:

\n", n);

out(n,mas);

zamena (n,mas);

printf("\nВывод массива после замены отрицательных

элементов на протипоположные:\n");

out(n,mas);

}

//Описание функции генерации массива с клавиатуры

void gen(int k,int a, int b, int x[max]){

int i;

srand(time(NULL)*1000);

for (i=0;i<k;i++){

x[i]=int(rand()*1.0/(RAND_MAX)*(b-a)+a);

}

}

//Описание функции вывода массива в строку

void out (int k,int x[max]){

int i;

for (i=0;i<k;i++)

printf("%-6d",x[i]);

}

//Описание функции замены

void zamena(int k,int x[max]){

int i;

for (i=0;i<k;i++)

if (x[i]<0) x[i]=-x[i];

}








Дата добавления: 2015-02-16; просмотров: 744;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.