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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.10.2007, 21:28   #11
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Точно. Закомментируй
zarplata (sot);
Я про него забыл. И скажи результат.

Дружеский совет: поменяй float на double, а то погрешности ужасные!
Carbon вне форума Ответить с цитированием
Старый 06.10.2007, 21:33   #12
Noor
Участник клуба
 
Аватар для Noor
 
Регистрация: 01.11.2006
Сообщений: 1,051
По умолчанию

Нормально ... прога запустилась !!!
Noor вне форума Ответить с цитированием
Старый 06.10.2007, 21:37   #13
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

А так:

Код:
#include <stdio.h>
void zarplata (char*sotr, int chasi, double rascenka)
{
printf("%s zarabotal %f grn.\n", sotr, chasi*rascenka);
}

void main ()
{
char sot[100];
puts ("Vvedite sotrudnika:");
scanf ("%s",sot);
zarplata (sot,192,5.7);
getchar();
getchar();
}
Carbon вне форума Ответить с цитированием
Старый 06.10.2007, 21:41   #14
Noor
Участник клуба
 
Аватар для Noor
 
Регистрация: 01.11.2006
Сообщений: 1,051
По умолчанию

нормально ... работает.
Я даже сделать что бы и значения chasi и rascenka тоже вводилась с клавиатуры !!!
ТОлько объясни зачем нужно 2 раза вызывать getchar()?
З.Ы. спасибо за лик.без по с++

Последний раз редактировалось Noor; 06.10.2007 в 21:52.
Noor вне форума Ответить с цитированием
Старый 06.10.2007, 21:53   #15
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Цитата:
2 раза вызывать getchar()
Наверное, из-за этого: "%s zarabotal %f grn.\n" (на конце перевод строки).

Цитата:
как можно сделать что бы и значения chasi и rascenka тоже вводилась с клавиатуры ?
Код:
#include <stdio.h>

void zarplata (char *sotr, int chasi, double rascenka)
{
printf("%s zarabotal %lf grn.\n", sotr, chasi*rascenka);
}

void main ()
{
char sot[100];
puts ("Vvedite sotrudnika:");
scanf ("%s",sot);
int chasi;
puts ("Vvedite chasi:");
scanf ("%d",&chasi);
double rascenka;
puts ("Vvedite rascenku:");
scanf ("%lf",&rascenka);
zarplata (sot,chasi,rascenka);
getchar();
getchar();
}
Carbon вне форума Ответить с цитированием
Старый 10.10.2007, 09:06   #16
Noor
Участник клуба
 
Аватар для Noor
 
Регистрация: 01.11.2006
Сообщений: 1,051
По умолчанию

Пмогите доделать этот код
Код:
#include <stdio.h>
#define Nx 5

//---------------Массив Х----------------------
void vvod (float x[], int n, char q);
void fukaz(float x[], int n, double*min,int*Nmin,double*max,int*Nmax);
void fssilka(float x[], int n, double &min,int&Nmin, double &max,int&Nmax);
/*/----------------Массив Y---------------------
//----------------Массив Z---------------------
//----------------------------------------------------------------------------*/
void main()
{
float x[Nx];
double min, max;
//====
vvod (x, Nx, 'x');
fukaz (x,Nx,&min,&Nmin,&max,&Nmax);
printf("===Rezultat:Ispol'zovan ykazatel'======\n");
printf("MIN=%f №MIN%i\nMAX=%f №MAX%i\n",min,Nmin,max,Nmax);
printf("\n");
//Далее следует вызов функции с передачей данных с помощью ссылок
fssilka(x,Nx,min,Nmin,max,Nmax);
printf("===Rezultat:Ispol'zovana ssilka  ======\n");
printf("MIN=%f №MIN%i\nMAX=%f №MAX%i\n",min,Nmin,max,Nmax);
//Естественно, что результаты совпадают
}
//=====
void vvod(float x[], int n, char q)
{
for(int i=0; i<n ;i++)
{
printf("Vvedite %c[%i]\n",q,i);
scanf("%f",&x[i]);
}
return;
}
//====
void fukaz(float x[], int n, double*min,int*Nmin,double*max,int*Nmax)
{
*min=x[0];
*max=x[0];
*Nmin=0;
*Nmax=0;
for(int i=0; i<n ;i++)
if(*min>x[i])
*min=x[i];
*Nmin=i;
else
if(*max<x[i])
*max=x[i];
*Nmax=i;
}
//====
void fssilka(float x[], int n, double &min,int&Nmin, double &max,int&Nmax)
{
min=x[0];
max=x[0];
Nmin=0;
Nmax=0;
for(int i=0; i<n ;i++)
if(min<x[i])
min=x[i];
Nmin=i;
else
if(max>x[i])
max=x[i];
*Nmax=i;
}
как вывести Максимальный и Минимальный номер элементов массива !!!!
Noor вне форума Ответить с цитированием
Старый 10.10.2007, 13:13   #17
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию Ставь скобки

Код:
#include <stdio.h>

void vvod(float *x, int n, char q)
{
  for(int i=0; i<n ;i++)
  {
    printf("Vvedite %c[%i]\n",q,i);
    scanf("%f",&x[i]);
  }
}

void pointer(float *x, int n, double *min,int *Nmin,double *max,int *Nmax)
{
*min=x[0];
*max=x[0];
*Nmin=0;
*Nmax=0;

for(int i=1; i<n ;i++)
  if(*min>x[i])
  {
    *min=x[i];
    *Nmin=i;
  }
  else
    if(*max<x[i])
    {
      *max=x[i];
      *Nmax=i;
    }

}

void reference(float *x, int n, double &min,int &Nmin,double &max,int &Nmax)
{
min=x[0];
max=x[0];
Nmin=0;
Nmax=0;

for(int i=1; i<n ;i++)
  if(min>x[i])
  {
    min=x[i];
    Nmin=i;
  }
  else
    if(max<x[i])
    {
      max=x[i];
      Nmax=i;
    }

}


void main()
{
const int Nx=5;
float x[Nx];

double min, max;

vvod (x, Nx, 'x');
pointer (x,Nx,&min,&Nmin,&max,&Nmax);

printf("===Rezultat:Ispol'zovan ykazatel'======\n");
printf("MIN=%f №MIN%i\nMAX=%f №MAX%i\n\n",min,Nmin,max,Nmax);
//Далее следует вызов функции с передачей данных с помощью ссылок
reference(x,Nx,min,Nmin,max,Nmax);
printf("===Rezultat:Ispol'zovana ssilka  ======\n");
printf("MIN=%f №MIN%i\nMAX=%f №MAX%i\n",min,Nmin,max,Nmax);
//Естественно, что результаты совпадают
}
Carbon вне форума Ответить с цитированием
Старый 10.10.2007, 16:00   #18
Noor
Участник клуба
 
Аватар для Noor
 
Регистрация: 01.11.2006
Сообщений: 1,051
По умолчанию

Огромное человеческое спасибо Carbon ....
только в твоем коде нужно добавить
Цитата:
void main()
{
const int Nx=5;
float x[Nx];
int Nmin,Nmax
double min, max;
З.Ы.теперь еще нужно сделать обработку сразу 3 массивов с использованием перегрузки функции... жуть просто !!! Это вобще реально, в 2 функциях обработку 3 массивов ???

Последний раз редактировалось Noor; 10.10.2007 в 16:36.
Noor вне форума Ответить с цитированием
Старый 10.10.2007, 17:21   #19
JET_FLASH
Пользователь
 
Аватар для JET_FLASH
 
Регистрация: 24.09.2007
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Noor Посмотреть сообщение
Код:
void zarplata (char sot,char*sotr, int chasi=192, float rascenka=5.7);
код в принципи то рабочий...
Это кто так учит. Код впринципе нерабочий.
Да поможет нам F1. Да сохранит нас F2... Аминь
JET_FLASH вне форума Ответить с цитированием
Старый 10.10.2007, 17:28   #20
JET_FLASH
Пользователь
 
Аватар для JET_FLASH
 
Регистрация: 24.09.2007
Сообщений: 33
По умолчанию

Ну вы, ребят, даете. Кто сказал, что "const" можно использовать в качестве размера массива?
Да поможет нам F1. Да сохранит нас F2... Аминь
JET_FLASH вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться с кодом! sid Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 5 13.04.2010 17:53
Помогите разобраться с кодом WINApi Zaraki Общие вопросы C/C++ 13 23.03.2008 21:39
помогите разобраться с кодом samosval Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 27.12.2007 00:20
Просьба разобраться с кодом на С++ deazer Помощь студентам 1 08.11.2007 07:55