Quick actions

cmd+k|ctrl+k

Navigation

Languages

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

Snippet info

Language

Cpp

Visibility

public

Author

grekich505

Created

2019-11-03T12:43:54Z

Updated

2019-11-05T15:10:36Z

#include <iostream>
#include <math.h>

using namespace std;

void task5()
{
    cout<<"Task5\n\n";
    //5.Заполнить массив из двенадцати элементов следующим образом: 1, 2, ..., 12.
    
    int i;
    string number[12] = {
        "1", "2", "3",
        "4", "5", "6",
        "7", "8", "9", 
        "10", "11", "12"};  
    for (i=0; i<=9; i++)
    {
        cout << number[i] << " ";
    }
    cout << "\n" << endl;
}

void task40()
{
    cout<<"\nTask40\n\n";
    //40.Дана последовательность чисел, среди которых имеется один нуль.
    //Вывести на экран все числа до нуля включительно.
    
   
    int n; // количество чисел в массиве
    int i; // номер
    int *a = new int[n];
    cout << "Введите количество чисел в массиве \n";
    cin >> n;
    for (i = 1; i <= n; i++ )
    {   
        a[i] =  rand() % 10;
    }  

    i = 1;
    while (a[i] != 0 && i != n)
    {
        cout << "Число "<< i << " = " << a[i] << endl;
        i++;
         
    }

    if (i == n)
       cout << "Числа 0 в последовательности нет" << endl;
    else
       cout << "Числo 0 имеет номер = " << i << "\n" << endl;
     
    
}

void task75()
{
    cout<<"\nTask75\n\n";
    //75.Дана непустая последовательность целых чисел, оканчивающаяся числом 100. 
    //Определить, есть ли в последовательности число 77. Если имеются несколько 
    //таких чисел, то определить порядковый номер первого из них.
    
   
    int n; // количество чисел в массиве
    int i; // номер
    int *a = new int[n];
    cout << "Введите количество чисел в массиве \n";
    cin >> n;
    // задание последовательности чисел 
    for (i = 1; i < n; i++ )
    {   
        a[i] =  rand() % 99;
        cout << "Число "<< i << " = " << a[i] << endl;
    }
    a[n] = 100;
    // программа расчёта
    i = 1;
    while (a[i] != 77 && i != n) { i++; }
    if (i == n)
       cout << "Числа 77 в последовательности нет" << endl;
    else
       cout << "Числo 77 имеет номер = " << i << endl;
     
}

void task110()
{
    cout<<"\nTask110\n\n";
    //110.	На i-e место одномерного массива целых чисел вставить число, равное
    //произведению первого и последнего элементов.
   
    
    int n; // количество чисел в массиве
    int i; // номер
    int k; // номер меняемого числа
    int *a = new int[n];
    cout << "Введите количество чисел в массиве \n";
    cin >> n;
    for (i = 1; i <= n; i++ )
    {   
        a[i] =  rand() % 10;
        cout << "Число "<< i << " = " << a[i] << endl;
    }  
    cout << "Введите номер меняемого числа \n";
    cin >> k;
    a[k] = a[1] *  a[n];
    
    {   
        cout << "Число "<< k << " = " << a[k] << endl;
    } 
}

void task145()
{
    cout<<"\nTask145\n\n";
    //145.Японская радиокомпания провела опрос N радиослушателей по вопросу: 
    //«Какое животное вы связываете с Японией и японцами?». 
    //Составить программу получения k наиболее часто встречающихся ответов и их 
    //долей (в процентах).
    
    int i; 
    int n;
    int k;
    int b[5];
    string a[1000];
    string otvet[5] = {
        "макака", "журавль", "сова",
        "панда", "рыба" }; 
      // ответы японцев 
    cin >> n;
       for (i = 1; i <= n; i++ )
    {   
        k =  rand() % 5;
        a[i] = otvet[k];
        cout << "Ответ - " << a[i] << endl;
    }
    // программа расчёта
    for (k = 0; k <= 4; k++ )
        {
           b[k] = 0;
        }
        
    for (i = 1; i <= n; i++ ) 
    {
       for (k = 0; k <= 4; k++ )
       {
           if (a[i] == otvet[k] )
           b[k]++;
       }
        
        
    }
    for (k = 0; k <= 4; k++ )
        {
         cout<< "Ответ " << otvet[k] << " - "<< double(b[k]) * 100 / double(n) << "%"<< endl;  
        }
}

void task180()
{
    cout<<"\nTask180\n\n";
    //180.Написать программу определения в одномерном массиве вещественных чисел 
    //наибольшего количества последовательно расположенных положительных чисел.
    
    int n; // количество чисел в массиве
    int i; // номер
    int k;
    int kmax;
    int *a = new int[n];
    cout << "Введите количество чисел в массиве " << endl;
    cin >> n;
    // задание последовательности чисел 
    for (i = 1; i < n; i++ )
    {   
        a[i] =  rand() % 5;
        cout << "Число " << i << " = " << a[i] << endl;
    } 
    //программа расчёта
    kmax=1;
    k=1;
    for (i=2; i<=n; i++)
    {
        if (a[i] == a[i-1] +1)
          k++;
        else
        {
        if (k>kmax) kmax=k;
        k = 1;
        }

    }
   cout << "Наибольшего количества последовательно расположенных положительных чисел = " << kmax << endl;
     
}


int main()
{
    
    task5();
    task40();
    task75();
    task110();
    task145();
    task180();

}




INFO