Форум программистов, компьютерный форум CyberForum.ru

Функция, которая возвращает произведение элементов одномерного массива - C++

Восстановить пароль Регистрация
 
tamarka
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 8
09.04.2013, 18:30     Функция, которая возвращает произведение элементов одномерного массива #1
Написать функцию, которая возвращает произведение элементов одномерного массива.
Ошибок нет. Всё время возвращает значение "не гласная" при вводе любых и согласных, и гласных букв. В чём ошибка? Вроде правильно функция значение возвращает...?

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
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include "locale.h"
   int gl(char ch);
   int main()
   {   char a;
   setlocale(LC_ALL, "rus");
   printf("Введите букву\n");
   scanf_s("%c", &a);
       if (gl(a)==1)
           printf("Гласная", a);
       else
           printf("Не гласная", a);
       printf("%c", gl(a));
       system("pause");
   }
   int gl(char ch)
   {   char m[18]={'У', 'Е', 'А', 'О', 'Э',
   'Я', 'И', 'Ю', 'Ё',
   'у', 'е', 'а', 'о', 'э', 'я', 'и', 'ю', 'ё'};
   int N=0;
   setlocale(LC_ALL, "rus");
   for (int i=0; i<18; i++)
       if (m[i]==ch) N++;
   if (N==1)
       return 1;
   else return 0;
   }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2013, 18:30     Функция, которая возвращает произведение элементов одномерного массива
Посмотрите здесь:

Функция, которая возвращает количество неотрицательных элементов массива. (через указатели) C++
C++ Написать функцию, которая возвращает максимальный элемент одномерного массива
Вычислить произведение элементов одномерного массива C++
Написать функцию, которая возвращает сумму отрицательных элементов одномерного массива. C++
составить программу, которая находит максимальное и минимальное значение среди элементов одномерного массива Y, которая состоит из N целых чисел C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KwanzaBot
 Аватар для KwanzaBot
9 / 9 / 2
Регистрация: 05.04.2013
Сообщений: 61
09.04.2013, 18:35     Функция, которая возвращает произведение элементов одномерного массива #2
for (int i=0; i<18; i++)
if (m[i]==ch) N++;
if (N==1)
return 1;
Во-первых есть же break для выхода из цикла.
А во-вторых, тут просто нет проверки на гласную или не гласную, а в массиве вобще большие и маленькии буквы. И где тут надо "Написать функцию, которая возвращает произведение элементов одномерного массива."

Что курил ТС ?
tamarka
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 8
09.04.2013, 19:22  [ТС]     Функция, которая возвращает произведение элементов одномерного массива #3
бред- выше написанное- здесь же есть умные люди, ну вы где?
KwanzaBot
 Аватар для KwanzaBot
9 / 9 / 2
Регистрация: 05.04.2013
Сообщений: 61
09.04.2013, 19:45     Функция, которая возвращает произведение элементов одномерного массива #4
бред- выше написанное- здесь же есть умные люди, ну вы где?
Вдумайтесь, что вы написали. У умных людей рожа скорчится от вашего поста.
1. Вы спутали гласные и согласные буквы с большими и маленькими.
2. В коде проверяется принадлежность принадлежность одной из этих букв в общем, а не где маленькие а где большие.
3. ПРИ ЧЕМ ТУТ ПРОИЗВЕДЕНИЕ ЭЛЕМЕНТОВ ОДНОМЕРНОГО МАССИВА ??
4. Почему не все буквы в массиве(да ну и лан)
5. if (N==1)
return 1; Что это? Есть же break обычный или вобще сразу return.
6. Зачем тут scanf_s есть же обычный scanf
7. Как вы вобще смогли выдавить даже это
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
09.04.2013, 19:55     Функция, которая возвращает произведение элементов одномерного массива #5
Цитата Сообщение от tamarka Посмотреть сообщение
Написать функцию, которая возвращает произведение элементов одномерного массива.
Ошибок нет. Всё время возвращает значение "не гласная" при вводе любых и согласных, и гласных букв. В чём ошибка? Вроде правильно функция значение возвращает...?
А какое отношение гласные и не согласные буквы имеют к произведению и одна буква к массиву?
tamarka
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 8
09.04.2013, 20:15  [ТС]     Функция, которая возвращает произведение элементов одномерного массива #6
Добавлено через 2 минуты
блин, не то задание скопировала... Надо определить гласная буква введена пользователем или нет.

Добавлено через 5 минут
+при отладке проги была ошибка, связанная со scanf пришлось исправить на scanf_s- в интернете прочитала что можно так, не помню что значит, но пхд память освобождает под скан или что-то в этом роде
Yandex
Объявления
09.04.2013, 20:15     Функция, которая возвращает произведение элементов одномерного массива
Ответ Создать тему
Опции темы

Текущее время: 00:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru