Указатели. Динамические массивы в языке С++

Автор работы: Пользователь скрыл имя, 22 Мая 2013 в 00:25, лабораторная работа

Краткое описание

Написать программы, используя динамические массивы, размерность которых задается с клавиатуры.
Задание №1
Заполнить одномерный массив X n случайными числами от -7 до 9.

Вложенные файлы: 1 файл

Лабораторная работа №5.docx

— 162.80 Кб (Скачать файл)

Министерство образования и  науки РФ

Федеральное государственное  бюджетное образовательное учреждение

высшего профессионального образования  
«Тамбовский государственный технический университет»

«Многопрофильный колледж  ТГТУ»

 

 

 

Кафедра «ИСиЗИ»

 

 

 

 

 

 

 

 

 

 

Лабораторная  работа №5

Указатели. Динамические массивы  в языке С++

(вариант №16)

 

 

 

 

 

 

 

 

 

Специальность: 230115 «Программирование в компьютерных системах»

Дисциплина: Основы программирования

Выполнил: студент группы КПР-22

Минязев Артур Максумович

Проверил: преподаватель Минин Юрий Викторович

 

 

 

 

 

 

Тамбов 2013г.

Написать программы, используя  динамические массивы, размерность  которых задается с клавиатуры.

Задание №1

Заполнить одномерный массив X n случайными числами от -7 до 9.

Вычислить

начало


Алгоритм



n




X = new double[n];


srand(time(NULL));



i=0;i<n;i++




X[i]=rand()%(9+7+1)-7;



 

i=0;i<n; i++




X[i]




s=X[0];


sum=X[0];


 

i=1;i<n;i++




a=(i+1)*X[i];


s=s+a; sum=sum+s;




sum



 

Листинг

#include <iostream>

#include <stdlib.h>

#include <time.h>

using namespace std;

 

int main()

{

int i=0,n=0;

setlocale (LC_ALL, "Russian");

double *X,s=0, sum , a;

cout<<"Введите количество итераций: ";

cin>>n;

X = new double[n];

srand(time(NULL));

 

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

X[i]=rand()%(9+7+1)-7;

}

cout<<"Массив X: ";

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

{

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

}

s=X[0];

sum=X[0]; 

for (i=1;i<n;i++)

{

a=(i+1)*X[i];

s=s+a;

sum=sum+s;

}

 

cout << "\nРезультат выражения: "<<sum<< "\n";

delete []X;

system("pause");

}

 

 

 

 

 

 

 

 

 

 

 

Результат выполнения программы

 

 

Задание №2

Получить матрицу С  размерностью nґ´m, первая строка которой задается случайным образом, вторая строка – . Каждая следующая строка - сумма двух предыдущих.

начало


 

Алгоритм


 

 


n ,m




a= new double*[n];


 



i=0;i<n;i++




a[i]=new double[m];



srand((unsigned)time(NULL))




i=0; i<=0; i++



j=0; j<m; j++




a[i][j]=(rand()/1000);



i=1; i<2; i++



j=0; j<=m; j++



a[i][j]=(j+1)-3/(2+(1/(j+1)));




i=0;i<=n-1;i++



j=0; j<=m-1; j++



a[i][j]




конец


 


 

 

 

 

 

Листинг

#include <iostream>

#include <stdlib.h>

#include <time.h>

using namespace std;

int main()

{

int i,n,j,m;

double **a;

cin>>n>>m;

a= new double*[n];

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

a[i]=new double[m];

srand((unsigned)time( NULL ));

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

{

for(j=0; j<m; j++)

{

a[i][j]=(rand()/1000);

}}

for(i=1; i<2; i++)

{

for(j=0; j<=m; j++)

{

 

a[i][j]=(j+1)-3/(2+(1/(j+1)));

}

}

for(i=2; i<=n; i++)

{

for(j=0; j<=m; j++)

{

 

a[i][j]=a[i-2][j]+a[i-1][j];

}

}

for(i=0;i<=n-1;i++)

{

for(j=0; j<=m-1; j++)

{

 

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

}

cout<<"\n";

 

 

}

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

{delete[] a[i];}

delete[] a;}

 

 

 

 

 

 

 

Результат выполнения программы


Информация о работе Указатели. Динамические массивы в языке С++