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

Void main()

{

setlocale(LC_ALL,"Russian");

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

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

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

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

int b[m];//основной массив

int p1=1;

int p2=1;

cout<<"Массив А:"<<endl;

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

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

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

}

cout<<"Массив B:"<<endl;

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

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

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

}

for (int i=0; i<n; i++)//вычисление произведений

if (a[i]>0)

p1=p1*a[i];

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

if (b[i]<0)

p2=p2*b[i];

cout<<endl;

if (p2<p1)//вывод наибольшего

cout<<"p1 = "<<p1<<endl;

else

cout<<"p2 = "<<p2<<endl;

}

Вариант №9

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

#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 a[n]={2,1,9,0,6,5,8,0,4,0};//основной массив

int t=0;

cout<<"Исходный массив:"<<endl;

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

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

for (int i=0; i<n; i++)//проверка и изменение

if (a[i]==0){

t++;

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

a[j]=a[j+1];

}

for (int i=n-t;i<n;i++)

a[i]=0;

cout<<"Измененный массив:"<<endl;//вывод

cout<<endl;

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

cout<<a[i]<<"\t";//вывод

}

Вариант №10

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

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

#include <iostream>

#include <locale>

using namespace std;

Void main()

{

setlocale(LC_ALL,"Russian");

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

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

int t=0;

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

cout<<"Введите "<<i+1<<"-ый элемент массива"<<endl;

cin>>a[i];

}

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

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

for (int i=0; i<n-1; i++)//проверка и подсчет

if ((a[i]>0&&a[i+1]<0)||(a[i]<0&&a[i+1]>0))

t++;

cout<<"Количество соседств двух разных знаков = "<<t<<endl;//вывод

}

Задание №2

Вариант №1

Дана действительная матрица заданного размера. Найти сумму всех элементов, расположенных выше главной диагонали матрицы.

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

#include <iostream>

#include <locale>

using namespace std;

Void main()

{

setlocale(LC_ALL,"Russian");

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

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

int sum=0;

for (int i=0;i<n;i++)//диалог с пользователем

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

cout<<"Введите "<<" "<<i+1<<" "<<j+1<<" элемент массива"<<endl;

cin>>a[i][j];

}

for (int i=0;i<n;i++){//вывод исходного массива

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

cout<<a[i][j]<<"\t";

cout<<endl;

}

for (int i=0;i<n;i++)//проверка и подсчет

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

if (i<j)

sum+=a[i][j];

cout<<"Сумма элементов матрицы,расп. выше главной диагонали = "<<sum<<endl;//вывод

}

Вариант №2

Дана целочисленная матрица заданного размера. Определить максимальный элемент и его индексы, а также минимальный элемент и его индексы. Сам максимальный элемент заменить внутри матрицы на 100, а минимальный элемент на -100.

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

#include <iostream>

#include <locale>

using namespace std;

#include <time.h>