Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите написать программу, Программа на С++ 
:(
    Опции темы
ZRuslanZ
Дата 26.2.2019, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 26.2.2019

Репутация: нет
Всего: нет



Для одномерного массива вещественных чисел оформить в виде функций:
1) ввод, вывод массива;
2) нахождение:
- номера максимального элемента;
- количества отрицательных элементов;
- среднего геометрического;
3) сдвигание на K элементов влево.

Если можно с пояснениями. Заранее огромная благодарность.
PM MAIL   Вверх
LeonidPr
Дата 27.2.2019, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 17.2.2012
Где: г. Чебоксары

Репутация: нет
Всего: 1



Если надо сделать за вас, то вам в Центр помощи
Если вы хотите, чтобы вам именно помогли, тогда предлагайте свой вариант решения, с описанием что не так, что не работает
--------------------
pkunzip.zip
PM MAIL   Вверх
kapbepucm
Дата 27.2.2019, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: нет
Всего: 12



Код
#include <iostream>
#include <math.h>

using namespace std;

#define N 5 //количество элементов массива

void enter_values(double* A)
{
  cout << "ввод массива" << endl;
  int i;
  for (i=0; i < N; ++i)
  {
    cout << "введите элемент " << i << " массива A: ";
    cin >> *(A + i * sizeof(double));
  }
}

void print_values(double* A)
{
  cout << "вывод массива" << endl;
  int i;
  for (i=0; i < N; ++i)
    cout << "A[" << i << "]=" << *(A + i * sizeof(double)) << endl;
}

int find_max(double* A)
{
  int result = 0;
  int i;
  for (i=0; i < N; ++i)
    if (*(A + result * sizeof(double)) < *(A + i * sizeof(double)))
      result = i;
  return result;
}

int find_negatives(double* A)
{
  int result = 0;
  int i;
  for (i=0; i < N; ++i)
    if (*(A + i * sizeof(double)) < 0)
      ++result;
  return result;
}

double find_average(double* A)
{
  double result = 1;
  int i;
  for (i=0; i < N; ++i)
    result *= *(A + i * sizeof(double));
  return pow(result, 1.0/N);  
}

void make_shift(double* A, int value)
{
  double buffer;
  int x, i;
  for (x=0; x < value; ++x)
  {
    buffer = *A;
    for (i=1; i < N; ++i)
      *(A + (i-1) * sizeof(double)) = *(A + i * sizeof(double));
    *(A + (i-1) * sizeof(double)) = buffer;
  }
}

int main(void)
{
  int K;
  double A[N]; //инициализация массива
  cout << "нумерацию начинаем с 0" << endl;
  enter_values(A);
  print_values(A);
  cout << "номер максимального элемента: " << find_max(A) << endl;
  cout << "количества отрицательных элементов: " << find_negatives(A) << endl;
  cout << "среднее геометрическое: " << find_average(A) << endl;
  cout << "введите K: ";
  cin >> K;
  make_shift(A, K);
  cout << "результат после сдвига:" << endl;
  print_values(A);
  return 0;
}



--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
kapbepucm
Дата 27.2.2019, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: нет
Всего: 12



Цитата(LeonidPr @  27.2.2019,  15:24 Найти цитируемый пост)
Если надо сделать за вас, то вам в Центр помощи
Кстати, да- я заметил, что эта ветка форума больше на центр помощи смахивает, модераторов лишить премии!  smile 


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1219 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.