Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 12.09.2011
Сообщений: 3

Будет ли ошибкой return в ф-и MinMax?

12.09.2011, 20:36. Показов 2367. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Изучаю язык Си, есть решённая задачка.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<stdio.h>
#define SIZE 10
/*void*/int* MinMax(int *d, int len, int *mass/*,2 надо ли тут ставить двойку?*/)
{int i;
 int min, max;
min=max=d[0];
for (i=0; i<len; i++)
    {if (d[i]>max) max=d[i];
     if (d[i]<min) min=d[i];
    }
*mass=min;
*(mass+1)=max;
return(mass); /*?????*/
}
 
void main ()
{int data[SIZE]={32,-432,-34,4804,0,884}, mass[2];
MinMax(data, SIZE, mass/*,2  надо ли тут ставить двойку?*/);
printf("min=%d  max=%d\n", *mass, *(mass+1));
}
1. Будет ли ошибкой return в ф-и MinMax?
2. Надо ли ставить двойку в объявлении MinMax'a и зачем?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.09.2011, 20:36
Ответы с готовыми решениями:

Будет ли ошибкой в html5 если я буду закрывать теги?
Например сделаю так &lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;/templates/newstime/font-awesome/css/font-awesome.min.css&quot;...

Найти вероятность того, что измерение будет произведено с ошибкой
Производится измерение диаметра вала без систематических (одного знака) ошибок. Случайные ошибки измерения X подчинены нормальному закону...

Что это isOk(int s),setAge(int g){if(isOk(g){age=g;return true;}else{.;return false;}}.getName(){return name;}?
package com.company; import java.io.Serializable; public class person implements Serializable { protected String name; ...

28
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
14.09.2011, 13:19
Студворк — интернет-сервис помощи студентам
Сыроежка, А еще логичнее юзать std::minmax)
0
Заблокирован
14.09.2011, 20:21
Цитата Сообщение от MrGluck Посмотреть сообщение
Вообще-то человек просил на СИ
И что из того, что программу нужно написать на С? Разве это означает, что нужно забивать глобальное пространство имен?!!!

Добавлено через 15 минут
Цитата Сообщение от Thinker Посмотреть сообщение
Сыроежка, спасибо, конечно, но мне на С++ не интересно пока, это я и сам могу. Напишите алгоритм на Си.

Добавлено через 19 минут
Ну вот, Сыроежка, спасовали...
Если вы хотите посмотреть, как выглядит код на С, написанный профессиональными программистами, то я вам продемонстрирую На С, очевидно, другая парадигма программирования. Я вам покажу код этой функции, который примут в любом профессиональном проекте. Разве что у кого-нибудь может быть возникнут стилистические замечания.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
typedef struct
{
   int min;
   int max;
} min_max_t;
 
_Bool iMinMax( const int *a, size_t n, min_max_t *result )
{
   if ( n == 0 || a == NULL ) return ( 0 );
 
   result->min = a[0];
   result->max = a[0];
 
   for ( size_t i = 1 ; i < n ; i++ )
   {
      if ( a[i] < result->min ) result->min = a[i];
      if ( result->max < a[i] ) result->max = a[i];
   }
 
   return ( 1 );
}
Представленный код будет компилироваться, если ваш С-компилятор поддерживает стандарт С99. Ежели у вас старый компилятор, то нужно внести лишь два изменения: заменить тип _Bool на int и определение переменной size_t i поместить в начало тела функции.

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

C++
1
2
3
4
5
6
7
int a[] = { 1, 4 , -2, 6 ,7 ,4 ,3, -5, 9, 0, -4 };
min_max_t min_max = { 0 };
 
if ( iMinMax( a, sizeof( a ) / sizeof( *a ), &min_max ) )
{
   printf( "minimum = %d, maximum = %d\n", min_max );
}
Добавлено через 2 минуты
Цитата Сообщение от ForEveR Посмотреть сообщение
Сыроежка, А еще логичнее юзать std::minmax)
Я не знаю такой стандартной функции std::minmax, которая соответствует описанный здесь функции.
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
14.09.2011, 21:07
Цитата Сообщение от Сыроежка Посмотреть сообщение
Если вы хотите посмотреть, как выглядит код на С, написанный профессиональными программистами...
Спорный вопрос о качестве программы...
0
Заблокирован
14.09.2011, 21:22
Цитата Сообщение от Thinker Посмотреть сообщение
Спорный вопрос о качестве программы...
Это только потому, что скорей всего у вас квалификация не высокая! задавайте вопросы, которые считаете спорными, и на них отвечу!
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
14.09.2011, 21:31
Цитата Сообщение от Сыроежка Посмотреть сообщение
Это только потому, что скорей всего у вас квалификация не высокая! задавайте вопросы, которые считаете спорными, и на них отвечу!

Не по теме:


После такого считаю для себя зазорным что-то у вас спрашивать...Настоящего профессионала видно даже из далека, да и не ведут они себя так, чего о вас не скажешь, к сожалению...

0
Заблокирован
14.09.2011, 21:33
Цитата Сообщение от Thinker Посмотреть сообщение

Не по теме:


После такого считаю для себя зазорным что-то у вас спрашивать...

Когда говорите, что что-то спорно, то конкретно называйте, что спорно. Иначе это просто демагогия!
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
14.09.2011, 21:51
Цитата Сообщение от Сыроежка Посмотреть сообщение
Когда говорите, что что-то спорно, то конкретно называйте, что спорно. Иначе это просто демагогия!

Не по теме:

Если вы пытаетесь что-то красивое показать, то не стоит бить кулаком в грудь и горланить что-то типа "Я здесь лучший!!!..."

1
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
14.09.2011, 23:00
Сыроежка, Жаль. Погуглите что-ли. minmax для двух значений. minmax_element для контейнеров)
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,981
15.09.2011, 00:21
Цитата Сообщение от Сыроежка Посмотреть сообщение
конкретно называйте, что спорно
Ну вот например:
Цитата Сообщение от Сыроежка Посмотреть сообщение
printf( "minimum = %d, maximum = %d\n", min_max );
всё-таки
C
1
printf( "minimum = %d, maximum = %d\n", min_max.min, min_max.max );
кошернее, хоть и длиннее. Маленькое изменение в формате вывода - к примеру поле вывода регулируемой ширины ("%*d %*d", ... ) и хана конструкции...


Не по теме:

Цитата Сообщение от Сыроежка Посмотреть сообщение
у вас квалификация не высокая
М-да... Горбатого могила правит...

2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.09.2011, 00:21

Зачем нужно окаймлять аргумент функции return, что будет возвращать данный оператор, если не использовать скобки?
Очередной привет программистам форума, в процессе работы над своим заданием столкнулся с таким вопросом, на самом деле в заголовке...

Будет ли исполняться код, написанный в функции после "return:="?
будет ли исполняться код написанный в функции после result:= или это можно считать возвратом функции и дальше код не исполняется ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru