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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
#1

Найти наименьшую по значению цифру в каждом числе - C++

11.01.2011, 04:59. Просмотров 1296. Ответов 25
Метки нет (Все метки)

решаю задачу,но есть какая то ошибка.Не могу разобраться в чём.Помогите пожалуйта.Вот условие задачи:
Вводится последовательность из N целых чисел. Найти наименьшую по
значению цифру в каждом числе (функцией оформить определение
наименьшей цифры числа).

А вот програмный код на С++ который я написала:
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
#include <iostream>
#include <conio.h>
#include <vector>
 
int f(int x);
 
void main()
{
 setlocale(LC_ALL,"RUS");
 int *x,n,i;
 std::cout<<"Вводите кол-во N целых чисел: "; std::cin>>n;
 x=new int [n];
 std::cout<<"Введите "<<n<<" целых чисел: ";
 for(i=0;i<n;i++) std::cin>>x[i]; std::cout<<"\n";
 for(i=0;i<n;i++)
  std::cout<<"В числе №"<<i+1<<" наименьшее число: "<<f(x[i])<<std::endl;
 getch();
}
 
int f(int x)
{
 std::vector<int>ms;
 while(x>0)
 {
 ms.push_back(x%10);
 x/=10;
 }
 int min=ms[0];
 for(int i=0;i<ms.size();i++)
  if(ms[i]<ms[0]) min=ms[i];
 return min;
 system("PAUSE");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2011, 04:59     Найти наименьшую по значению цифру в каждом числе
Посмотрите здесь:

C++ Найти наибольшую по значению четную цифру в массиве
Найти наименьшую по значению цифру в каждом числе C++
Найти наибольшую цифру в заданном числе C++
C++ Задача на тему функции. Найти наименьшую по значению цифру в каждом числе последовательности
C++ Вводится последовательность из N целых чисел. Найти наибольшую по значению четную цифру в каждом числе последовательност
C++ Найти наибольшую по значению четную цифру в каждом числе последовательности
Найти наименьшую четную цифру. Если ее нет, возвратить 0 C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
2917 / 1346 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
11.01.2011, 05:18     Найти наименьшую по значению цифру в каждом числе #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <ctime>
#include <cstdlib>
#include <cstdio>
 
int LeastDigit(const int &a_number) {
  int least_digit = a_number % 10;
  int current_number = a_number / 10;
  while (current_number != 0) {
    if (least_digit > current_number % 10)
      least_digit = current_number % 10;
    current_number /= 10;
  }
  return least_digit;
}
 
int main(int argc, char *argv[]) {
  srand(time(NULL));
 
  int number_count = 50 + rand() % 10;
  int *numbers = new int[number_count];
 
  for (int i = 0; i < number_count; ++i)
    numbers[i] = rand() % 55535 + 10000;
 
  for (int i = 0; i < number_count; ++i)
    printf("Number: %d, least digit: %d.\n", numbers[i],
           LeastDigit(numbers[i]));
 
  return 0;
}
deadlock
375 / 354 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
11.01.2011, 05:22     Найти наименьшую по значению цифру в каждом числе #3
что не правильно? компилируется, работает.
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
11.01.2011, 05:25  [ТС]     Найти наименьшую по значению цифру в каждом числе #4
Я скомпилировала,и там сразу много много цифр вниз "побежало")))))А потом и вообще всё исчезло(((Может что то не так???
Monkey_2
34 / 34 / 4
Регистрация: 11.02.2009
Сообщений: 84
11.01.2011, 05:26     Найти наименьшую по значению цифру в каждом числе #5
C++
1
2
 for(int i=0;i<ms.size();i++)
  if(ms[i]<min) min=ms[i];
скорее всего в условии нада сравнивать с минимальным а не с первым
Nameless One
Эксперт С++
5765 / 3414 / 255
Регистрация: 08.02.2010
Сообщений: 7,431
11.01.2011, 05:29     Найти наименьшую по значению цифру в каждом числе #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Лично мне кажется, что заголовок темы "Программирование циклических процессов с использование функций" подразумевает использование рекурсии:
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
#include <iostream>
 
#define ABS(A) ((A) >= 0 ? (A) : (-(A)))
 
size_t min(size_t x, size_t d);
 
int main()
{
    size_t n;
    int* seq;
    std::cout << "Input a number of integers: ";
    std::cin >> n;
    seq = new int[n];
    std::cout << "Input a sequence of integers:" << std::endl;
    for(size_t i = 0; i < n; ++i)
    {
        std::cout << i + 1 << ": ";
        std::cin >> seq[i];
    }
    for(size_t i = 0; i < n; ++i)
        std::cout << "Min digit in the number " << seq[i] << " is " 
            << min(ABS(seq[i]) / 10, ABS(seq[i]) % 10) << std::endl;
    delete[] seq;
    return 0;
}
 
size_t min(size_t x, size_t d)
{
    if(!x)
        return d;
    
    return min(x / 10, (x % 10 < d ? x % 10 : d));
}
lemegeton
2917 / 1346 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
11.01.2011, 05:34     Найти наименьшую по значению цифру в каждом числе #7
Цитата Сообщение от Викулишна Посмотреть сообщение
Я скомпилировала,и там сразу много много цифр вниз "побежало")))))А потом и вообще всё исчезло(((Может что то не так???
Добавьте в конец кода
C++
1
system("PAUSE");
Добавлено через 44 секунды
Цитата Сообщение от Nameless One Посмотреть сообщение
Лично мне кажется, что заголовок темы "Программирование циклических процессов с использование функций" подразумевает использование рекурсии:
Да навряд-ли, обычно тема про рекурсии так и называется.
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
11.01.2011, 05:35  [ТС]     Найти наименьшую по значению цифру в каждом числе #8
Я поставила,всё равно такая же история повторилась((((
Nameless One
Эксперт С++
5765 / 3414 / 255
Регистрация: 08.02.2010
Сообщений: 7,431
11.01.2011, 05:39     Найти наименьшую по значению цифру в каждом числе #9
Викулишна, покажи окончательный код

Добавлено через 1 минуту
Цитата Сообщение от lemegeton Посмотреть сообщение
Да навряд-ли, обычно тема про рекурсии так и называется.
Это было просто предположение. А так, в принципе, можно было бы вообще без циклов и массивов обойтись
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
11.01.2011, 09:00  [ТС]     Найти наименьшую по значению цифру в каждом числе #10
Я же написала код.Всё равно не могу разобраться.По другому решить тоже не могу((((Может быть кто нибудь поможет???
Nameless One
Эксперт С++
5765 / 3414 / 255
Регистрация: 08.02.2010
Сообщений: 7,431
11.01.2011, 09:04     Найти наименьшую по значению цифру в каждом числе #11
Викулишна, тебе уже привели два разных варианта. Ты их пробовала запускать? А конкретно по твоему коду Monkey_2 уже отписался.
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
11.01.2011, 09:12  [ТС]     Найти наименьшую по значению цифру в каждом числе #12
Пробовала.У меня они не запускаются.В конце везде поставила system("PAUSE");....Всё равно не запускается
Nameless One
Эксперт С++
5765 / 3414 / 255
Регистрация: 08.02.2010
Сообщений: 7,431
11.01.2011, 09:16     Найти наименьшую по значению цифру в каждом числе #13
Викулишна, не запускаются - это в смысле, не компилируются? Или запускаются, но окно быстро пропадает?
И так, на всякий случай -
C++
1
system("pause");
надо ставить до
C++
1
return 0;
а не после
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
11.01.2011, 09:33  [ТС]     Найти наименьшую по значению цифру в каждом числе #14
Nameless One, Спасибочки бошьшое))))
Nameless One
Эксперт С++
5765 / 3414 / 255
Регистрация: 08.02.2010
Сообщений: 7,431
11.01.2011, 09:34     Найти наименьшую по значению цифру в каждом числе #15
Викулишна, всегда пожалуйста
lemegeton
2917 / 1346 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
11.01.2011, 11:43     Найти наименьшую по значению цифру в каждом числе #16
Сообщение было отмечено автором темы, экспертом или модератором как ответ
А чем мой код не подходит? Просто замените заполнение рандомом на заполнение вручную.
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
#include <ctime>
#include <cstdlib>
#include <cstdio>
 
int LeastDigit(const int &a_number) {
  int least_digit = a_number % 10;
  int current_number = a_number / 10;
  while (current_number != 0) {
    if (least_digit > current_number % 10)
      least_digit = current_number % 10;
    current_number /= 10;
  }
  return least_digit;
}
 
int main(int argc, char *argv[]) {
  srand(time(NULL));
 
  int number_count
  // scanf("Total count: %d", number_count);
  number_count = 50 + rand() % 10;
  int *numbers = new int[number_count];
 
  for (int i = 0; i < number_count; ++i)
    // scanf("Number: %d", numbers[i]);
    numbers[i] = rand() % 55535 + 10000;
 
  for (int i = 0; i < number_count; ++i)
    printf("Number: %d, least digit: %d.\n", numbers[i],
           LeastDigit(numbers[i]));
 
  int key;
  scanf("%d", &key);
  return 0;
}
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
11.01.2011, 11:47  [ТС]     Найти наименьшую по значению цифру в каждом числе #17
lemegeton, Опять выдаёт ошибку в 21 строке
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
11.01.2011, 11:51     Найти наименьшую по значению цифру в каждом числе #18
19 - пропущена точка с комой ;
Викулишна
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 28
11.01.2011, 12:06  [ТС]     Найти наименьшую по значению цифру в каждом числе #19
Точка с чем???

Добавлено через 13 минут
Maxwe11,Точка с чем????
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.01.2011, 12:13     Найти наименьшую по значению цифру в каждом числе
Еще ссылки по теме:

C++ Найти наибольшую цифру в заданном целом числе N
Найти наименьшую цифру заданного пятизначного числа и количество вхождений этой цифры (файловый ввод/вывод) C++
Функции: найти наибольшую по значению четную цифру в каждом числе последовательности C++
Найти наибольшую по значению четную цифру в каждом числе последовательности C++
C++ Найти наименьшую цифру числа

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

Или воспользуйтесь поиском по форуму:
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
11.01.2011, 12:13     Найти наименьшую по значению цифру в каждом числе #20
C++
1
int number_count;
Yandex
Объявления
11.01.2011, 12:13     Найти наименьшую по значению цифру в каждом числе
Ответ Создать тему
Опции темы

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