Лабораторная работа №1. Обработка строк в программе
Задание: Напишите программу, проверяющую, является ли строка палиндромом. Фраза называется палиндромом, если она читается от конца к началу так же, как от начала к концу при игнорировании всех знаков, кроме букв.
Например, фраза "аргентина манит негра" -палиндром.
Ход работы: Исходные данные строка.
Полный текст программы будет выглядеть так:
#include<iostream.h>
#include "Rus.h"
#include <string.h>
void main(int argc, char* argv[])
{
char str[40];
bool fin=true;
cout<<Rus("\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("Строка палиндром! \n");
else
cout<<Rus("Строка не палиндром! \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("\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("\n Массив не является не возрастающей последовательностью");
else
cout<<Rus("\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("Введите массив \n");
for(i=0; i<STR; i++) //перебор элементов массива
for(j=0; j<STLB; j++)
matr[i][j]=random(180)-80;
//вывода двумерного массива;
cout<<Rus("\Исходный массив:");
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("\n Полученный массив::");
for(i=0; i<STR; i++) //перебор элементов массива
{
cout<<setw(8)<< res[i]; //выводим элемент массива
}
return;
}
Выполнение программы: Программа не выполняется, так как Microsoft Visual C++ 6.0 не знает функции «randomize».
Похожие работы
... 1000 10 1000 Итого: - - 11000 Отчисления во внебюджетные фонды 36%: - - 3960 Итого с отчислениями во внебюджетные фонды: 14960 Затраты на разработку программной системы аттестации ИТ-специалистов Расчёт релевантных затрат на разработку проекта приведён в таблице 11.9. Таблица 11.9 Расчёт релевантных затрат на разработку программной системы N п/п ...
... 30 END Возможно присваивание значений не всем элементам массива. Тогда оставшиеся элементы будут иметь начальное нулевое значение. Если загрузить значения в большой массив, то эти методы работы с массивами становятся непрактичными. Можно значительно упростить программу, если привлечь для присвоения значений оператор цикла FOR. Выполните и проанализируйте действие программы 4. ПРОГРАММА 4 10 ...
... вычисляется сумма элементов, находящихся под главной диагональю. OptionButton2_Click() – процедура-переключатель, при выборе которого вычисляется сумма элементов, составляющих главную диагональ. 2.2 Разработка схемы программного модуля и ее описание Блок-схема процедуры заполнения квадратной матрицы представлена на рисунке 5: 1 2 3 4 5 6 7 8 9 ...
... также невысока и обычно составляет около 100 кбайт/с. НКМЛ могут использовать локальные интерфейсы SCSI. Лекция 3. Программное обеспечение ПЭВМ 3.1 Общая характеристика и состав программного обеспечения 3.1.1 Состав и назначение программного обеспечения Процесс взаимодействия человека с компьютером организуется устройством управления в соответствии с той программой, которую пользователь ...
0 комментариев