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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Масив С++ 
:(
    Опции темы
Merroy
Дата 16.12.2018, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



По указанию пользователя или вычислить сумму и произведение отрицательных элементов одномерного массива х (20), или найти максимальный элемент среди четных элементов этого массива.

PM MAIL   Вверх
kapbepucm
Дата 17.12.2018, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Код
#include "stdafx.h"
#include <iostream>
#include <stdlib.h>
#include <ctime>

using namespace std;

int my_rand(int min, int max)
{
  return min + (rand() % (max - min + 1));
}

int main()
{
  srand((unsigned int)time(NULL));
  setlocale (LC_ALL, "rus");

  const int count = 20;
  int x[count];
  int i;
  int choise;

  cout << "генерация массива x [1;" << count << "]:" << endl;
  for (i=0; i<count; ++i)
  {
    x[i] = my_rand(-5,5);
    cout << "x[" << i+1 << "]= " << x[i] << endl;
  }

  int N;
  cout << endl << "далее, выберите нужную операцию:" << endl
       << "1. вычисление суммы и произведения отрицательных элементов" << endl
       << "2. поиск максимального элемента среди чётных элементов" << endl
       << "для выбора введите число и нажмите <enter>: ";
  cin >> choise;
  cout << endl;

  switch(choise)
  {
    case 1:
    {
      char enabled = 0;
      int result1 = 0;
      int result2 = 1;
      for (i=0; i<count; ++i)
        if (x[i] < 0)
        {
          enabled = 1;
          result1 = result1 + x[i];
          result2 = result2 * x[i];
        }
      cout << "результаты вычисления сумм и произведений отрицательных элементов:" << endl;
      if (enabled)
      {
        cout << "сумма: " << result1 << endl;
        cout << "произведение: " << result2 << endl;
      }
      else
        cout << "в данном массиве нет отрицательных элементов" << endl;
      break;
    }
    case 2:
    {
      //в задаче ничего не сказано, если таких элементов будет несколько, значит ищем только один и последний :)
      int max = 1;
      for (i=1; i<count; i = i + 2)
        if (x[i] > x[max]) max = i;
      cout << "максимальный элемент среди чётных элементов: x[" << max+1 << "]=" << x[max] << endl;
      break;
    }
    default:
    {
      cout << "неопределённый выбор" << endl;
      break;
    }
  }

  system ("pause");
  return 0;
}



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

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

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

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

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


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

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


 




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


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

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