Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

надо представить в виде шаблона(

81K
17 мая 2012 года
Марина 2108
2 / / 13.05.2012
В одномерном массиве, состоящем из n вещественных элементов, вычислить:

1) количество отрицательных элементов массива;

2) сумму модулей элементов массива, расположенных после минимального по модулю элемента.

Заменить все отрицательные элементы массива их квадратами и упорядочить элементы массива по возрастанию.



вот мой вариант , но не рабочий...

Код:
//Лабораторная работа 8_1
//laba1
#include "iostream"
#include "iomanip"
#include "cmath"

using namespace std;
template <class T> T vvod (T mass[100],int ke)
{
    for (int i = 0; i < ke; i++)
    {
        cin >> mass [i];
    }
        for (int i = 0; i < ke; i++)
        {
            cout<<setw(5)<<mass[i];
        }
 cout<<endl;
 return 1;
}
template <class T> T otr(T mass[100],int ke,int koe=0)
{
    for (int i=0; i<ke; i++)
        if (mass[i]<0)
            koe++;
    cout<<"Количество отрицательных элементов массива = "<<koe<<endl;
    cout<<endl;
    return 0;
}
template <class T> T summa1(T mass[100],int ke,int summa=0)
{
    int i;
    int n_min=0;
    float summa=0;
    for (int i=1; i<ke; i++)
        if ( fabs(mass[i]))< fabs(mass[0]))
        n_min=i;
    if (n_min==ke-1)
        cout<<"Минимальный по модулю элемент последний.\n";
    else
    {
            for (int i=(n_min+1); i<ke; i++)
        summa+=fabs(mass[i]));
   
            cout<<"Сумма модулей элементов после минимального по модулю = "<<summa<<endl;
   
            cout<<endl;
    }
            return 0;
}
template <class T> T zamena(T mass[100],int ke)
{
    for (int i=0; i<ke; i++)
        if (mass[i]<0)
            mass[i]=mass[i]*mass[i];
return 0;
}
template <class T> T sortirovka(T mass[100],int ke)
{
double k;
    for (int i=0; i<(ke-1); i++)
    {
        for (int j=i+1; j<ke; j++)
        {
            if (mass[i] > mass[j])
            {
                k=mass[i];
                mass[i]=mass[j];
                mass[j]=k;
            }
        }
    }
    cout<<"Отсортированный массив:\n";
    for (int i=0; i<ke; i++)
        cout << mass[i] << ' ';
    cout<<endl;
    return 0;
}
int main()
{
 int array[100];
    int ke,koe=0,summa=0;
    cout<<"Vvedite kolichestvo jelementov massiva =";
    cin>>ke;
    vvod(array,ke);
    otr(array,ke,koe);
    summa1(array,ke,summa);
    sortirovka(array,ke);
    system("pause");
    return 0;
}

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог