Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
PrettyNya
0 / 0 / 0
Регистрация: 04.01.2012
Сообщений: 12
#1

разработка нерекурсивных функций.

04.01.2012, 13:35. Просмотров 1396. Ответов 5
Метки нет (Все метки)

Здравствуйте, задание таково - разработать функцию, которая для каждого заданного натурального числа N возвращает значение true - если число простое, false - составное, с помощью этой функции: для каждого целого числа на отрезке [a,b] вывести на экран сумму его цифр.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
using namespace std;
int s(int x);
 
int main() {
int a =10;
int b = 30;
int i;
 
for (i = a; i < b + 1; ++i) {
    printf("%d, ", s(i));
}
printf("\n");
return 0;
}
int s(int x){
    int s = 0;
    while (x){
        s+= x % 10;
        x/=10;
    }
    return s;
}
Вот, что напечатала, прошу посмотрите, если что не так, скажите:
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2012, 13:35
Ответы с готовыми решениями:

разработка нерекурсивных функций
Разработать функцию, которая для заданного натурального числа N возвращает...

Разработка нерекурсивных функций
Помогите пожалуйста написать программку Разработать функцию, которая для...

Разработка нерекурсивных функций
Разработать функцию, которая для заданного натурального числа N возвращает...

Разработка нерекурсивных функций: вычислить значение выражения, результат представить в виде обыкновенной дроби
помогите плииз)) не могу разобраться в задаче:вычислить значение выражения...

Разработка простейших функций
Выполнить упражнения из лабораторной работы «Структуры», оформив ввод данных в...

5
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
04.01.2012, 13:59 #2
Цитата Сообщение от PrettyNya Посмотреть сообщение
разработка нерекурсивных функций.
Цитата Сообщение от PrettyNya Посмотреть сообщение
разработать функцию, которая для каждого заданного натурального числа N возвращает значение true - если число простое, false - составное,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
bool simple (size_t n)
{
   for ( int i = 2 ; i <= n / 2 ; ++i )
      if (  ! (n % i)  ) 
         return false;
   return true;
}      
 
int main ()
{
   size_t SimpleTrue = 3 , SimpleFalse = 4;
   std::cout << std::boolalpha << simple (SimpleTrue) << " " << simple (SimpleFalse) << std::endl;
}
http://liveworkspace.org/code/3e71d9e66d3364daf0436a0a6ccdd338

Цитата Сообщение от PrettyNya Посмотреть сообщение
с помощью этой функции: для каждого целого числа на отрезке [a,b] вывести на экран сумму его цифр.
А при чем здесь эта функция?
1
PrettyNya
0 / 0 / 0
Регистрация: 04.01.2012
Сообщений: 12
04.01.2012, 14:08  [ТС] #3
Цитата Сообщение от go Посмотреть сообщение
А при чем здесь эта функция?
Не понимаю вашего вопроса, уточните.
Хотя нет, поняла. Я скопировал текст для другого задания
Для нужного мне: разработать функцию, которая для заданного натурального числа N возвращает сумму его цифр. С помощью данной функции: для каждого целого числа на отрезке [a,b] вывести на экран сумму его цифр.
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
04.01.2012, 14:16 #4
Цитата Сообщение от PrettyNya Посмотреть сообщение
разработать функцию, которая для заданного натурального числа N возвращает сумму его цифр. С помощью данной функции: для каждого целого числа на отрезке [a,b] вывести на экран сумму его цифр.
C++
1
2
3
4
size_t digsum ( int n )
{
    return n < 0 ? digsum ( -n ) : ( n > 9 ) ? n % 10 + digsum (n / 10) : n;
}
1
PrettyNya
0 / 0 / 0
Регистрация: 04.01.2012
Сообщений: 12
04.01.2012, 14:19  [ТС] #5
Спасибо, но для меня новичка и такой код сложен, поэтому буду рада, если поясните его.
Особено вот это

Цитата Сообщение от go Посмотреть сообщение
digsum ( -n ) : ( n > 9 )
Тут предполагается, что если принадлежит циферному промежутку? почему тгда -n?
0
go
Эксперт С++
3636 / 1368 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
04.01.2012, 14:21 #6
Цитата Сообщение от PrettyNya Посмотреть сообщение
Тут предполагается, что если принадлежит циферному промежутку? почему тгда -n?
Да (проверяем одна ли цифра в числе). Но в начале, Если число отрицательное, то меняем знак. Вот поэтому -n
0
04.01.2012, 14:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2012, 14:21

Связка структур, разработка функций
Есть проблема. Есть 3 бинарных файла Subjects.txt Student.txt Mark.txt Есть 3...

Разработка динамических структур данных и функций их обработки
Длинное» целое число представляется как однонаправленный линейный список, где...

Разработка и отладка алгоритмов и программ с применением пользовательских функций
Добрый день, помогите решить задачку Написать процедуру перевода числа из...


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

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

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