|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - проверить решение |
|
|
C/C++ - проверить решение
|
|
Новый участник Сообщения: 4 |
Даны вещественные массивы A[14] S[14].Для каждого массива определить количество элементов предшествующих первому отрицательному элементу массива.
#include <iostream.h>
#include <iomanip.h>
// прототипы функций
void inputmas (int [14][14],char);
int schet (int[14][14]);
void outrez (int [14][14],char ,int);
void main()
{
//объявление массивов и переменных
int a[14],s[14],kola,kold;
inputmas(a,'a');// в функцию в качестве аргументов передается
inputmas(s,'s');// массив и его имя (символ в апострофах)
kola=schet(a);// вызов функции
kold=schet(s);
outrez (a,'a',kola);
outrez (s,'s',kold);
}
// определение функции ввода массива input()
void inputmas ( int x[14][14],char name)
{
int i,j;
cout <<"Вводим массив" << name << endl;
for (i=0;i<14;i++)
for (j=0;j<14;j++)
{
cout << "Введите элемент массива " << name << "[" << i << "] << "[ << j << "]=";
cin >> x[i][j];
}
}
//определение расчётной функции schet()
int schet (int m[14][14])
{
int i,kol,min;
min=m[0];// первоначально за min примем 1-й элемент
kol=0; // количество элементов,предшествующих минимальному
for(i=1;i<14;i++)
for(j=1;j<14;j++)
// нашли в массиве элемент, значение которого меньше значения принятого за минимум
{
min =m[i][j]; // заменили значение минимума
kol=i; // количество элементов, предшествующих минимальному
}
return(kol); // передача значения в точку вызова данной функции
}
// определение функции вывода массива outrez()
void outrez (int x[14][14],char name, int kol)
{
int i,j;
cout << "Исходный массив " << name << ":" << endl;
for (i=0;i<14;i++)
for (j=0;j<14;j++)
cout << setw (5) << x [i][j];
cout << " Наименьшему элементу в массиве" << name << "предшествует" << kol << элементов \n";
}
проверьте пожалуйста текст программы на ошибки, если таковые имеются напишите. |
|
|
Отправлено: 00:25, 27-11-2011 |
|
Будем жить, Маэстро... Сообщения: 6694
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Famous9221:
|
|
|
------- Отправлено: 02:39, 27-11-2011 | #2 |
|
Пользователь Сообщения: 107
|
Famous9221, код программы, который ты выложил, не соответствует заданному вопросу. Если тебе всё же надо определить количество элементов предшествующих первому отрицательному элементу массива, делай примерно так:
int schet (int m[14][14])
{
int i, kol;
kol=0; // количество элементов,предшествующих первому отрицательному!
for(i=0; i<14; i++)
for(j=0; j<14; j++)
{
if (m[i][j] >= 0) kol++ else {if (kol=0) cout << "0" else cout << kol;}; // т.е. если текущий элемент массива
// неотрицателен, то увеличиваем наш счётчик kol на единицу,
// а если же он отрицателен, то если это первый элемент (и он уже отрицательный), то выводим сразу ответ (т.е. 0), а если не первый, то выводим нужный ответ (kol)
}
return(0); // передача значения в точку вызова данной функции
}
|
|
Последний раз редактировалось Sidewalker, 18-07-2020 в 17:48. Причина: При выкладывании кода используй тег кода!!! Отправлено: 15:54, 27-11-2011 | #3 |
|
Будем жить, Маэстро... Сообщения: 6694
|
Профиль | Сайт | Отправить PM | Цитировать Sidewalker, Да-да, ошибочное условие. Поздно писал, уже голова не варила как оказалось.
Цитата Sidewalker:
|
|
|
------- Отправлено: 17:52, 27-11-2011 | #4 |
|
Пользователь Сообщения: 107
|
А может ему не надо полностью?
![]() Famous9221, скажи что-нибудь. |
|
|
Отправлено: 19:45, 28-11-2011 | #5 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| C/C++ - проверить решение задачи и закончить её | Famous9221 | Программирование и базы данных | 0 | 26-11-2011 23:13 | |
| Wireless - Посоветуйте WI-FI решение. | krec | Сетевое оборудование | 2 | 29-06-2009 10:39 | |
| FreeBSD - Инженерное решение... | xolod. | Общий по FreeBSD | 1 | 28-05-2009 23:23 | |
| C/C++ - Решение дифуравнения на С++ | gustav21 | Программирование и базы данных | 4 | 22-09-2008 20:41 | |
| Терминальное решение | Baboon | Сетевые технологии | 2 | 06-10-2003 17:13 | |
|