Смекни!
smekni.com

Программное определение числовых массивов

Лабораторная работа №1. Обработка строк в программе

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

Например, фраза "аргентина манит негра" -палиндром.

Ход работы: Исходные данные строка.

Полный текст программы будет выглядеть так:

#include<iostream.h>

#include "Rus.h"

#include <string.h>

void main(int argc, char* argv[])

{

char str[40];

bool fin=true;

cout<<Rus("&bsol;n Введите строку без пробелов: ");

cin>>str;

int len=strlen(str);

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

if(str[i]!= str[strlen(str)-i-1])

{

fin=false;

}

if(fin)

cout<<Rus("Строка палиндром! &bsol;n");

else

cout<<Rus("Строка не палиндром! &bsol;n");

return;

}

Выполнение программы: Программа выполняется правильно

Лабораторная работа №2. Одномерные числовые массивы

Задание: Напишите программу, определяющую, образуют ли элементы целочисленного массива невозрастающую последовательность.

Этапы решения задачи:

-Заполнения массива случайными числами в диапазоне от –50 до +50.

-Вывода одномерного массива.

-Определения, образуют ли элементы массива невозрастающую последовательность.

Ход работы: -Заполнения массива случайными числами в диапазоне от –50 до +50.

-Вывода одномерного массива.

-Определения, образуют ли элементы массива невозрастающую последовательность.

Полный текст программы будет выглядеть так:

#include<iostream.h>

#include"Rus.h"

#include<time.h>

#include<stdlib.h>

#define SIZE 7 //задаем размерность массива

void main(void)

{

int mas[SIZE]; //объявляем массив

int k=50;

bool fin=true;

//заполнение массива случайными числами

randomize(); //инициализируем генератор случайных чисел

for(int i=0; i<SIZE; i++) //перебор элемонтов массива

mas[i]=random(2*k) - k; //формируем случайное число [-k;+k]

//вывод элементов массива на экран

cout<<Rus("&bsol;nМассив:");

for(i=0; i<SIZE; i++) //перебор элементов массива

cout<< mas[i]<<endl; //выводим i-ый элемент массива

//проверка не возрастания последовательности

for(i=0; i<SIZE-1; i++) // перебор элементов массива

if (mas[i]<mas[i+1]) //если следующий элемент больше предыдущего, то не является не возрастающей последовательностью

fin=false;

if (fin)

cout<< Rus("&bsol;n Массив не является не возрастающей последовательностью");

else

cout<<Rus("&bsol;n Массив не является последовательностью ");

return;

}

Выполнение программы: Программа не выполняется, так как Microsoft Visual C++ 6.0 не знает функции «randomize».

Лабораторная работа №3. Двумерные числовые массивы

Задание: Для матрицы найти сумму элементов каждой строки матрицы. Сформировать массив D из найденных сумм.

Ход работы: Этапы решения задачи:

-заполнения двумерного массива случайными числами из диапазона –80, +100;

-вывода двумерного массива;

-поиска сумм элементов строк матрицы;

-вывод массива-результата.

Полный текст программы будет выглядеть так:

#include<iostream.h>

#include"Rus.h"

#include<iomanip.h>

#include<time.h>

#include<stdlib.h>

#define STR 3 //задаем количество строк в массиве

#define STLB 4 //задаем количество столбцов в массиве

#define NSTLB 2 //задаем номер анализируемого столбца

void main(void)

{

int matr[STR][STLB]; //объявляем массив

int res[STR];

int i, j, sum;

randomize();

// //заполнения двумерного массива числами с клавиатуры;

cout<<Rus("Введите массив &bsol;n");

for(i=0; i<STR; i++) //перебор элементов массива

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

matr[i][j]=random(180)-80;

//вывода двумерного массива;

cout<<Rus("&bsol;Исходный массив:");

for(i=0; i<STR; i++) //перебор элементов массива

{

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

cout<<setw(8)<< matr[i][j]; //выводим элемент массива

cout<<endl; //переводим курсор на след строку

}

for(i=0; i<STR; i++) //перебор элементов массива

{

sum=0;

for(j=0; j<STLB; j++)sum+=matr[i][j];

res[i]=sum;

}

cout<<Rus("&bsol;n Полученный массив::");

for(i=0; i<STR; i++) //перебор элементов массива

{

cout<<setw(8)<< res[i]; //выводим элемент массива

}

return;

}

Выполнение программы: Программа не выполняется, так как Microsoft Visual C++ 6.0 не знает функции «randomize».