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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
chainiksi
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 25
#1

определение функций - C++

22.11.2011, 07:38. Просмотров 753. Ответов 9
Метки нет (Все метки)

Подскажите пожалуйста, как определить функцию используя массивы.
В чем мои ошибки в этой программе?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include<iostream>
char test1(char X,char Y,char Z);
char test2(char X,char Y,char Z);
char test3(char X,char Y,char Z);
int main()
{
char test1(char X,char Y,char Z)
{
char X[n] = {12, 95, 1, 100, 88, 111, 81, 50, 11, 2};
char Y[n]= {8, 20, 1, 99, 0, 15, 100, 40, 30, 3};
char Z[n]= {0, 65, 1, 1, 50, 50, 56, 1, 6, 5};
}
      char test2(char X,char Y,char Z)
     {
      int X[n] = {125,111,100,90,114,100};
      int Y[n]= {30,40,11,90,20,0};
      int Z[n]= {111,100,50,90,100,1};
      }
char test3(char X,char Y,char Z)
      {
int X[n]= {88,78,68,10};
int Y[n]= {10,69,77,20};
int Z[n]= {9,70,68,4};
      }
      char test4(char X,char Y,char Z)
      {
      int X[n] = {64};
      int Y[n]= {70};
      int Z[n]= {88};
      }
char test5(char X,char Y,char Z)
{
int X[n] = {64};
int Y[n]= {65};
int Z[n]= {88};
         }
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2011, 07:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос определение функций (C++):

Итерационные циклы,Определение и вызов функций,Использование библиотечных функций stdio.h - C++
Помогите решить задания: 1.Дано натуральное число n. Найти разность между первой цифрой этого числа и суммой всех остальных. ...

странное определение функций - C++
Читал заголовочный файл, так наткнулся на следующее выражение: #define MPI_MAX (MPI_Op)(0x58000001) Что означает такое...

Определение и вызов функций - C++
2. Определить функции, переводящую число в двоичную систему счисления и проверяющую, является ли двоичная запись числа симметричной...

Определение и вызов функций - C++
Всем привет. Записать алгоритм, проверяющий является ли заданное число простым как рекурсивную функцию. Вывести на экран все простые...

Определение и вызов функций - C++
Здравствуйте. Такая проблема с задачей....Нужно Определить функцию, проверяющую, является ли данное число простым, и функцию, вычисляющую...

Определение функций сортировок в классе - C++
Есть класс содержащий к примеру 2 функции сортировки(выбором и пузырьком) в которые передается интовый массив. Из методов реализации...

9
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.11.2011, 08:04 #2
Цитата Сообщение от chainiksi Посмотреть сообщение
Подскажите пожалуйста, как определить функцию используя массивы.
А как начертить грузовик, используя бензин? Точно также, как бензин не используется при проектировании грузовика, а любой бензовоз чертится карандашом, так же и функции определяются, используя клавиатуру, а не массивы.

Добавлено через 1 минуту
Строка № 7: это не паскаль, чтооб объявлять локальные функции, к тому же функция уже объявлена глобально.

Добавлено через 1 минуту
Строка № 9: переменная X уже объявлена, нельзя повторять.
Стркоа № 10: переменная Y уже объявлена, нельзя повторять.
Стркоа № 11: переменная Z уже объявлена, нельзя повторять.

Добавлено через 42 секунды
Строка № 13: это не паскаль, чтооб объявлять локальные функции, к тому же функция уже объявлена глобально.

Добавлено через 27 секунд
Строка № 15: переменная X уже объявлена, нельзя повторять.
Стркоа № 16: переменная Y уже объявлена, нельзя повторять.
Стркоа № 17: переменная Z уже объявлена, нельзя повторять.

Добавлено через 29 секунд
Строка № 19: это не паскаль, чтооб объявлять локальные функции, к тому же функция уже объявлена глобально.

Добавлено через 40 секунд
Строка № 21: переменная X уже объявлена, нельзя повторять.
Стркоа № 22: переменная Y уже объявлена, нельзя повторять.
Стркоа № 23: переменная Z уже объявлена, нельзя повторять.

Добавлено через 29 секунд
Строка № 25: это не паскаль, чтооб объявлять локальные функции.

Добавлено через 51 секунду
Строка № 27: переменная X уже объявлена, нельзя повторять.
Стркоа № 28: переменная Y уже объявлена, нельзя повторять.
Стркоа № 29: переменная Z уже объявлена, нельзя повторять.

Добавлено через 1 минуту
Строка № 31: это не паскаль, чтооб объявлять локальные функции.
Строка № 33: переменная X уже объявлена, нельзя повторять.
Стркоа № 34: переменная Y уже объявлена, нельзя повторять.
Стркоа № 35: переменная Z уже объявлена, нельзя повторять.
0
chainiksi
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 25
22.11.2011, 08:08  [ТС] #3
возможно ли вообще определение функции используя массивы?
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.11.2011, 08:25 #4
А возможно ли вообще проектирование грузовика, используя бензин? Возможно ли вообще проектирование автомобиля, используя многих пассажирров? В отличие от проектирования атомобиля, перевозящего многих пассажиров и называемрого автобусом.

Добавлено через 7 минут
Задачу в студию, а пока дам пример программы, вводящей, сортирующей и выводящей массив с помощью функций:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream.h>
void Input(double *x, int n, char *c);
void Sort(double *x, int n);
void Output(double *x, int n, char *c);
int main ()
{
 char c[]="a";
 int a[10];
 Input(a, 10, c);
 Sortz(a,10);
 Output(a,10,c);
 return 0;
}
void Input(double *x, int n, char *c)
{
 int i;
 for (i=0; i<=n; ++i)
 {
  std::cout<<c<<"["<<i<<"]=";
  std::cin>>x[i];
 }
 std::cout<<endl;
}
void Sort(double *x, int n)
{
 int i;
 int j;
 double t;
 for (i=0; i<n; ++i)
 {
  for (j=i+1; j<=n; ++j)
  {
   if (a[i]>a[j])
   {
    t=a[i];
    a[i]=a[j];
    a[j]=t;
   }
  }
 }
}
void Output(double *x, int n, char *c)
{
 int i;
 for (i=0; i<=n; ++i)
 {
  std::cout<<c<<"["<<i<<"]="<<x[i];
  std::cin>>x[i];
 }
 std::cout<<endl;
}
Добавлено через 4 минуты
Та же прога через указатели:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <iostream.h>
void Input(double *x, int n, char *c);
void Sort(double *x, int n);
void Output(double *x, int n, char *c);
int main ()
{
 char c[]="a";
 int a[10];
 Input(a, 10, c);
 Sortz(a,10);
 Output(a,10,c);
 return 0;
}
void Input(double *x, int n, char *c)
{
 double *i;
 double *j;
 e=a+n-1;
 for (i=a; i<=e; ++i)
 {
  std::cout<<c<<"["<<(i-a)<<"]=";
  std::cin>>*i;
 }
 std::cout<<endl;
}
void Sort(double *x, int n)
{
 double *i;
 double t;
 for (i=a+n-1; i>a; --i)
 {
  for (j=i-1; j>=a; --j)
  {
   if (*i<*j)
   {
    t=*i;
    *i=*j;
    *j=t;
   }
  }
 }
}
void Output(double *x, int n, char *c)
{
 double *i;
 double *e;
 e=a+n-1;
 for (i=a; i<=e; ++i)
 {
  std::cout<<c<<"["<<(i-a)<<"]="<<x[i];
  std::cin>>*i;
 }
 std::cout<<endl;
}
0
chainiksi
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 25
22.11.2011, 09:20  [ТС] #5
Но а как еще кроме функции можно задать пять групп массивов X,Y,Z в 1й программе чтобы любую группу X,Y,Z можно было использовать в парограмме выполняющей такую операцию U[i]=X[i]+Y[i]-X[i]?

Добавлено через 39 минут
taras atavin, ты не знаешь, как проверить программы для решения U[i]=X[i]+Y[i]-X[i] при пяти тестах:
test 1:
int X[n] = {12, 95, 1, 100, 88, 111, 81, 50, 11, 2};
int Y[n]= {8, 20, 1, 99, 0, 15, 100, 40, 30, 3};
int Z[n]= {0, 65, 1, 1, 50, 50, 56, 1, 6, 5};
test 2:
int X[n] = {125,111,100,90,114,100};
int Y[n]= {30,40,11,90,20,0};
int Z[n]= {111,100,50,90,100,1};
test 3:
int X[n]= {88,78,68,10};
int Y[n]= {10,69,77,20};
int Z[n]= {9,70,68,4};
test 4:
int X[n] = {64};
int Y[n]= {70};
int Z[n]= {88};
test 5:
int X[n] = {64};
int Y[n]= {65};
int Z[n]= {88};
которые были бы в 1й программе
0
co6ak
Кошковед
409 / 502 / 29
Регистрация: 12.04.2010
Сообщений: 1,392
22.11.2011, 09:31 #6
опять сцылко
примеры использования массива + матрицы. всякие пошлости там происходят
0
chainiksi
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 25
22.11.2011, 09:45  [ТС] #7
co6ak, я конечно извиняюсь может быть я не внимательно просмотрел твою программу, но как мне использовать ее для своего случая?
0
co6ak
Кошковед
409 / 502 / 29
Регистрация: 12.04.2010
Сообщений: 1,392
22.11.2011, 09:49 #8
я вобще не вкурил зачем так много массивов передавать в функцию, из расчета что результатом будет один массив.
не самое разумное занятие
0
chainiksi
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 25
22.11.2011, 09:55  [ТС] #9
ну что поделаешь если условие такое. А это "не самое разумное" занятие началось еще весной когда надо было написать такую программу на ассемблере для микроконтроллера, но т.к. был пример решения, то я довольно быстро ее решил, а в этом семестре надо сделать программу на си, но примера нет.
0
accept
4825 / 3246 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 11:57 #10
Цитата Сообщение от chainiksi
В чем мои ошибки в этой программе?
в том, что ты создаёшь функции внутри функции
0
22.11.2011, 11:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2011, 11:57
Привет! Вот еще темы с ответами:

Объявление, определение и вызов двух функций - C++
//Программа должна включать в себя: объявление, определение и демонстрацию работы через вывозов двух функций : //а) Аргументы:...

Определение чисто виртуальных функций в потомках - C++
Можно ли вместо определения чисто виртуальной функции в классе-потомке написать эту самую функцию без тела? Т.е. она как бы есть, но ее как...

Шаблоны функций (определение наименьшего из двух аргументов) - C++
Напишите программу, которая использует шаблон функции для определения наименьшего из двух аргументов. Проверьте программу, используя пары...

Шаблоны функций (определение наименьшего из двух аргументов) - C++
Напишите программу, которая использует шаблон функции для определения наименьшего из двух аргументов. Проверьте программу, используя пары...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru