Форум программистов, компьютерный форум, киберфорум
Наши страницы

Определить количество положительных элементов массива до последнего нулевого - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать функцию, которая возвращает истину, если в массиве нет отрицательных элементов http://www.cyberforum.ru/cpp-beginners/thread127427.html
Ребята, нужна ваша помощь. На носу сессия и времени практически нет. Помогите с заданием по программированию: 1.Написать функцию, которая возвращает истину, если в массиве нет отрицательных...
C++ Код по Си++ Даны три положительных числа. Являются ли они сторонами прямоугольного треугольника? http://www.cyberforum.ru/cpp-beginners/thread127411.html
C++ Найти радиус описанной окружности
Если три заданных положительных числа являются сторонами правильного треугольника, то найти радиус описанной около него окружности.
не обновляется програма когда нажимаю X??? C++
посмотрите какие у меня ощибки, если можно исправте сразу, а то мозг плавиться \\\\\\: #include <cstdlib> #include <iostream> #include <fstream> #include <iomanip> #include <conio.h> using...
C++ Синхронизация потоков http://www.cyberforum.ru/cpp-beginners/thread127399.html
Разработать многопоточную программу, отображающую на экране взаимодействие трех нитей "читателей" из общей области данных и трех "писателей", записывающих в этот буфер данные. Буфер предназначен для...
C++ Структуры в c++. Исправление кода Требуется описать структуру с именем PRICE, содержащую следующие поля: -название товара; -название магазина, в котором продается товар; -стоимость товара. Написать программу,выполняющую следующие... подробнее

Показать сообщение отдельно
neske
1505 / 872 / 84
Регистрация: 26.03.2010
Сообщений: 2,986
10.05.2010, 12:05
Мои извинения, в прошлом коде допустил ошибку.
Исправил.
#include <iostream>
#include <ctime>
#include <iomanip>
void func (const int *, int);

int main()
{
const int size=10;
int X[size];
int Y[size];

srand(time(NULL));
std::cout << "Start matrix X:\n";
for (int i=0; i<size; i++) {
X[i]=rand()%10-5;
std::cout << std::setw(3) << X[i]; }
std::cout << std::endl << "Start matrix Y:\n";
for (int i=0; i<size; i++) {
Y[i]=rand()%10-5;
std::cout << std::setw(3) << Y[i]; }

std::cout << std::endl;
std::cout << "Matrix X:\n"; func (X, size);
std::cout << "Matrix Y:\n"; func (Y, size);

return 0;
}

void func (const int *MAS, int size)
{
int last_neg=-1; // тут будет индекс последнего отрицательного элемента.
for (int i=size-1; i>=0; i--)
if (MAS[i]==0) { last_neg=i; break; }
if (last_neg==-1) std::cout << "Zero element not found.\n";
else {
int num_pos=0; // кол-во положительных.
int num_neg=0; // кол-во отрицательных.

for (int i=0; i<last_neg; i++) // считаем кол-во положительных.
if (MAS[i]>0) num_pos++;

for (int i=last_neg+1; i<size; i++)
if (MAS[i]<0) num_neg++;

std::cout << "Number of positive elements: " << num_pos;
std::cout << std::endl;
std::cout << "Number of negative elements: " << num_neg;
std::cout << std::endl; }
}


Добавлено через 29 секунд
m@l@a, пользуйтесь тегами выделения кода и комментариями к нему.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.