Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Козырева И., лабораторные работы.doc
Скачиваний:
4
Добавлен:
16.04.2019
Размер:
2.95 Mб
Скачать

Void main()

{

setlocale(LC_ALL,"Russian");

srand((unsigned)time(NULL));//использование времени

const int n=10;//объявление переменных и констант

int mas[n];//массив

int sum=0;//сумма

for (int i=0; i<n; i++){

mas[i]=rand()%100-50;//задание случайных значений

cout<<mas[i]<<"\t";//вывод исходного массива

sum+=mas[i];

}

cout<<"Сумма элементов первого массива = "<<sum<<endl;

for (int i=0; i<n; i++)

if (mas[i]>=0)//операции для положительных

mas[i]=mas[i]*mas[i];

else //операции для отрицательных

mas[i]=mas[i]*mas[i]*mas[i];

sum=0;

for (int i=0; i<n; i++)//подсчет суммы

sum+=mas[i];

for (int i=0; i<n; i++)//вывод

cout<<mas[i]<<"\t";

cout<<"Сумма элементов второго массива = "<<sum<<endl;

}

Вариант №5

Переставьте элементы одномерного массива в обратном порядке. Нового массива не заводить.

#include "stdafx.h"//директивы

#include <iostream>

#include <locale>

#include <stdlib.h>

using namespace std;

#include <time.h>

Void main()

{

setlocale(LC_ALL,"Russian");

srand((unsigned)time(NULL));//использование времени

const int n=10;//объявление переменных и констант

int mas[n];//массив

int h=0;

for (int i=0; i<n; i++){

mas[i]=rand()%100-50;//задание случайных значений

cout<<mas[i]<<"\t";//вывод исходного массива

}

for (int i=0; i<=n/2-1; i++){//перестановка

h=mas[i];

mas[i]=mas[n-i-1];

mas[n-i-1]=h;

}

for (int i=0; i<n; i++)//вывод

cout<<mas[i]<<"\t";

}

Вариант №6

Дан одномерный массив Z размера n. Найти количество нулевых элементов в массиве, сами нулевые элементы заменить на единицу, их порядковые номера записать подряд в массив В.

#include "stdafx.h"//директивы

#include <iostream>

#include <locale>

using namespace std;

Void main()

{

setlocale(LC_ALL,"Russian");

const int n=10;//объявление переменных и констант

int mas[n]={0,0,67,2,0,5,0,8,0,0};//основной массив

int p[n];//массив

int k=0;//счетчик

for (int i=0; i<n; i++)

cout<<mas[i]<<"\t";//вывод исходного массива

for (int i=0; i<n; i++)

if (mas[i]==0){//проверка

mas[i]=1;

p[k]=i;

k++;

}

cout<<endl;//вывод

cout<<"Индексы :"<<endl;

for (int i=0; i<k; i++)//вывод

cout<<p[i]+1<<"\t";

cout<<endl;

cout<<"Новый массив :"<<endl;

for (int i=0; i<n; i++)//вывод

cout<<mas[i]<<"\t";

}

Вариант №7

Из исходного одномерного массива А размера n образовать два массива. В первый массив войдут подряд все четные элементы массива А, во второй массив войдут подряд записанные порядковые номера четных элементов, которые они имели в массивеА.

#include "stdafx.h"//директивы

#include <iostream>

#include <locale>

#include <stdlib.h>

using namespace std;

#include <time.h>

Void main()

{

setlocale(LC_ALL,"Russian");

srand((unsigned)time(NULL));//использование времени

const int n=10;//объявление переменных и констант

int mas[n];//основной массив

int p[n];//массив четных

int pi[n];//массив индексов четных

int k=0;//счетчик

for (int i=0; i<n; i++){

mas[i]=rand()%100-50;//задание случайных значений

cout<<mas[i]<<"\t";//вывод исходного массива

if (mas[i]%2==0){//проверка для четных

p[k]=mas[i];

pi[k]=i;

k++;

}

}

cout<<endl;

for (int i=0; i<k; i++)//вывод

cout<<p[i]<<" - "<<pi[i]+1<<"-й"<<endl;

cout<<endl;

}

Вариант №8

Найти произведение положительных элементов одномерного массива А размера n и произведение отрицательных элементов одномерного массива В размера m. Вывести на печать наибольшее из произведений.

#include "stdafx.h"//директивы

#include <iostream>

#include <locale>

#include <stdlib.h>

using namespace std;

#include <time.h>