Мои Конспекты
Главная | Обратная связь


Автомобили
Астрономия
Биология
География
Дом и сад
Другие языки
Другое
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Металлургия
Механика
Образование
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Туризм
Физика
Философия
Финансы
Химия
Черчение
Экология
Экономика
Электроника

БИЛЕТ N 17



 

  1. Многомерные массивы и указатели

Указатели на многомерные массивы в языке СИ - это массивы массивов, т.е. такие массивы, элементами которых являются массивы. При объявлении таких массивов в памяти компьютера создается несколько различных объектов. Например при выполнении объявления двумерного массива int arr2[4][3] в памяти выделяется участок для хранения значения переменной arr, которая является указателем на массив из четырех указателей. Для этого массива из четырех указателей тоже выделяется память. Каждый из этих четырех указателей содержит адрес массива из трех элементов типа int, и, следовательно, в памяти компьютера выделяется четыре участка для хранения четырех массивов чисел типа int, каждый из которых состоит из трех элементов. Определение многомерного массива должно содержать информацию о типе, размерности и количестве элементов каждой размерности. Остальные элементы массива получают начальные значения в соответствии со статусом массива (в глобальном массиве значения остальных элементов равны 0, в локальном массиве элементам присваиваются неопределённые значения).

Дополнительные фигурные скобки в инициализаторе позволяют инициализировать отдельные фрагменты многомерного массива.

 

 

  1. Написать программу для решения следующей задачи: получить элементы квадратной матрицы А=ç a i,j ç, i,j=1, ..., n, a i,j = f(i,j), где f(i,j) = -2 ( j / 2 - 3.1 ) ( i - 3.9 ) + 2.5 i j –10; из матрицы A получить компоненты вектора X={xi},i=1,2, ... ,n, по следующему правилу: в качестве вектора принять главную диагональ матрицы , которая преобразована следующим образом: в начале каждой строки должны быть ее неотрицательные элементы, а в конце - отрицательные элементы (с сохранением порядка следования тех или иных элементов).

Результаты вывода на экран – матрица А (построчно), вектор Х.

# include <iostream.h>

# include <conio.h>

# include <iomanip.h>

int main()

{

clrscr();

const int n=5;

double x[n][n];

 

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

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

x[i][j]=-2*(j/2-3.1)*(i-3/9)+2/5*i*j-10;

 

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

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

{cout.width(4);

cout.precision(1);

cout<<x[i][j]<<" ";}

cout<<"\n";}

cout<<"\n";

 

cout<<"\nVEKTOR:\n";

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

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

if(i==j)

{cout.width(4);

cout.precision(1);

cout<<x[i][j]<<" ";}

}

cout<<"\n";

 

cin.get();

cin.get();

return 0;

}

  1. Написать программу, которая выводит значение функции F(X)= sqrt(x*x – 9)

#include <iostream.h>

#include <math.h>

 

double f(double x)

{

return sqrt(x*x - 9);

}

main()

{

double x,y;

 

cout << " x";

cout << " f(x)\n";

cout << " ________________________\n\n";

//cycle without component

for (int i = -10; i <= 10; i++) {

if ( i > - 3 && i < 3)

continue;

x = (double)i;

y = f(x);

cout << " ";

cout.width(3);

cout << x << " ";

cout.width(7);

cout << y << "\n";

}return 0;}

 

  1. Напишите программу, которая выводит на экран следующее изображение При написании используйте оператор for и функции printf("\ "), printf("*") и printf("\\n"). Изображение должно параметрически масштабироваться

 

*

*

*

*

*

# include <iostream.h>

# include <conio.h>

# include <iomanip.h>

int main()

{

clrscr();

int i,n;

cin>>n;

int razm=n;

for(n;n>0;n--)

{

for(i=razm;i>n;i--)

cout<<" ";

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

cout<<"*";

cout<<"\n";

if(n==1)

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

cout<<"*";}}

cin.get();

cin.get();

return 0;

}

 

 




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







©2015-2020 mykonspekts.ru Все права принадлежат авторам размещенных материалов.