Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //1) Сформировать массив из n элементов.Количество элементов и их значения считываются из текстового файла.
- //2) Распечатать полученный массив.
- //3) Выполнить удаление указанных элементов из массива.
- //4) Вывести полученный результат в текстовый файл.
- //5) Выполнить добавление указанных элементов в массив.
- //6) Вывести полученный результат в текстовый файл.
- //7) Выполнить перестановку элементов в массиве.
- //8) Вывести полученный результат в текстовый файл.
- //9) Выполнить поиск указанных в массиве элементов и подсчитать количество сравнений, необходимых для поиска нужного элемента.
- //10) Вывести полученный результат в текстовый файл.
- //11) Выполнить сортировку массива указанным методом.
- //12) Вывести полученный результат в текстовый файл.
- //13) Выполнить поиск указанных элементов в отсортированном массиве и подсчитать количество сравнений, необходимых для поиска нужного элемента.
- //14) Вывести полученный результат в текстовый файл.
- #include <locale>
- #include <iostream>
- #include <fstream>
- using namespace std;
- int n;
- void delet(int* &mass){
- int min = mass[0];
- for (int i = 0; i < n; i++){ //Ищем минимальный эл-т
- if (mass[i] < min){
- min = mass[i];
- }
- }
- for (int i = n-1; i > 0; i--){ //Ищем эл-т равный минимальному, обход массива ведём с конца
- if (mass[i] == min){
- for (int j = i; j < n-1; j++){
- mass[j] = mass[j + 1];
- }
- n--;
- }
- }
- }
- void add(int* &mass){
- int N; // Кол-во новых эл-тов
- cout << "N =";
- cin >> N;
- n += N; // Увеличиваем кол-во эл-тов в массиве на N
- for (int i = n-N; i < n; i++){
- cout << "mass[" << i << "] = " << endl;
- cin >> mass[i];
- }
- }
- void perest(int* &mass){
- int a;
- for (int i = 0; i < n - 1; i += 2){ // Щагаем через эл-т и переставляем
- a = mass[i];
- mass[i] = mass[i + 1];
- mass[i + 1] = a;
- }
- }
- void find(int* mass){
- int a,j;
- cout << "Введите искомое значение" << endl;
- cin >> a;
- for (int i = 0; i < n; i++){
- if (mass[i] == a) j = i; //Ищем последний эл-т с заданным значением, если их несколько
- }
- j++;
- cout << "Номер эл-та с искомым значение: " << j << endl;
- }
- void sort(int* &mass){
- int i, min, n_min, j;
- for (i = 0; i<n - 1; i++)
- {
- min = mass[i]; n_min = i;//поиск минимального
- for (j = i + 1; j<n; j++)
- if (mass[j]<min)
- {
- min = mass[j];
- n_min = j;
- }
- mass[n_min] = mass[i];//обмен
- mass[i] = min;
- }
- }
- void print(int* mass){
- for (int i = 0; i < n; i++){
- cout << " " << mass[i];
- }
- cout << endl;
- cout << endl;
- }
- void main(){
- setlocale(LC_ALL, "rus");
- ifstream f("Text.txt", ios::in);
- f >> n;
- int* mass = new int[n];
- for (int i = 0; i < n; i++){
- f >> mass[i];
- }
- cout << "Исходный массив :" << endl;
- print(mass);
- delet(mass);
- cout << "Массив после удаления :" << endl;
- print(mass);
- add(mass);
- cout << "Массив после добавления :" << endl;
- print(mass);
- perest(mass);
- cout << "Массив после перестановки :" << endl;
- print(mass);
- find(mass);
- cout << endl;
- sort(mass);
- cout << "Массив после сортировки :" << endl;
- print(mass);
- }
Advertisement
Add Comment
Please, Sign In to add comment