Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2010, 15:32   #1
Rivass
 
Регистрация: 05.11.2010
Сообщений: 6
Вопрос Как запихнуть код в функцию

Здравствуйте! Впервые столкнулся с функциями... Помогите разобраться на наглядном примере.
Вот текст задачи:
Вводится массив целых чисел A размером N. Вывести значения и индексы макси-мального и минимального элементов. Все вычисления производить одной функцией.
Вот я решил задачку без функции:
Код:
#include<stdio.h>
int a[50],n,i,max,min,j,k;
void main(){
     scanf("%d",&n); 
     for(i=0;i<n;i++)
	 scanf("%d",&a[i]);
    max=a[0];
    min=a[0];
    for (i=1; i<n; i++)
	{
    if (a[i]>max) max=a[i];
	if (a[i]<min) min=a[i];
	}
	i=0;
	while (a[i]!=max) 
	{
		i++;
	}
	j=i;
	i=0;
	while (a[i]!=min) 
	{
		i++;
	}
	k=i;
    printf ("min=%d index=%d\n",min,k);
    printf ("max=%d index=%d\n",max,j);
}
Помогите пожалуйста сделать так же, но с функцией)
Rivass вне форума Ответить с цитированием
Старый 06.11.2010, 15:58   #2
Sam Gold
Форумчанин
 
Аватар для Sam Gold
 
Регистрация: 26.03.2010
Сообщений: 538
По умолчанию

Код:
void print_min_max(int *b,int size){
   int i,j=0,k=0;
   int	max=b[0];
   int   min=b[0];
   for (i=1; i<size; i++)
	{
     if (b[i]>max){
	      max=b[i]; 
	      j=i;
	  }
	  if (b[i]<min){
		   min=b[i];
		    k=i;
	   }
	}


    printf ("min=%d index=%d\n",min,k+1);
    printf ("max=%d index=%d\n",max,j+1);	
	
}
В самой проге вызываешь
Код:
int a[n];
//=============
print_min_max(a,n);
Единственный способ стать умнее - играть с более умным противником.

Последний раз редактировалось Sam Gold; 06.11.2010 в 16:04.
Sam Gold вне форума Ответить с цитированием
Старый 06.11.2010, 17:03   #3
Rivass
 
Регистрация: 05.11.2010
Сообщений: 6
По умолчанию

Большое спасибо) Понял)
Кстати k+1 и j+1 не нужно) Индекс это порядковый номер элемента от 0 до n =)
Rivass вне форума Ответить с цитированием
Старый 06.11.2010, 17:20   #4
Sam Gold
Форумчанин
 
Аватар для Sam Gold
 
Регистрация: 26.03.2010
Сообщений: 538
По умолчанию

Цитата:
Кстати k+1 и j+1 не нужно) Индекс это порядковый номер элемента от 0 до n =)
для из n элементов до n-1, включая, если быть точным Я просто написал k+1, чтобы по-человечески выглядело Привычнее же все-таки с единицы элементы массива нумеровать
Единственный способ стать умнее - играть с более умным противником.
Sam Gold вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не запихнуть файл на Юкоз docbrain Администрирование dedicated серверов, VPS/VDS, shared хостингов, IaaS, PaaS. 9 31.07.2010 19:33
Как можно изменить эту функцию(код)? -ushёl- Общие вопросы C/C++ 2 09.04.2010 13:07
Как программно на делфи, запихнуть текст в форму веб-страницы ? Alexandrrrr Общие вопросы Delphi 3 29.03.2009 16:07
Как запихнуть календарь в ComboBox? Bezdar Microsoft Office Excel 1 11.08.2008 17:30