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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2009, 19:25   #1
Many man
Пользователь
 
Регистрация: 25.11.2008
Сообщений: 83
По умолчанию Помогите решить задачу на функцию в с++

Разработать функцию,которая для заданного натурального числа N возвращает значение true - если число положительное, false - если число отрицательное. С помощью данной функции найти сумму всех составных чисел на отрезке [a,b]
Код:
#include"iostream"
using namespace std;
bool F(int x)
{cout<<"enter x";cin>>x;
	return(x>0);
}
int main()
{
	int a,b;
	int sum=0;
	cout<<"Введите интервал от а до b";
	cin>>a>>b;
            for(int i=a;i<=b;i++)
	if((x/2)||(x/3))
		F(sum+=x);
}
Помогите пожалуйста исправить
Many man вне форума Ответить с цитированием
Старый 07.05.2009, 19:34   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Википедия
Составно́е число́ — натуральное число большее 1, не являющееся простым. Каждое составное число является произведением двух натуральных чисел больших 1.
При чем тут функция, определяющая знак числа?

И кстати, если писать функцию именно так, как сказано в задании, то вводить N надо не в функции, а вне ее:
Код:
bool F(int N)
 { return (N>0); }
-----------
Тогда уж нужно писать функцию, определяющую, является ли число составным.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 07.05.2009, 19:42   #3
Many man
Пользователь
 
Регистрация: 25.11.2008
Сообщений: 83
По умолчанию

Незнаю так в задании сказано.
Many man вне форума Ответить с цитированием
Старый 07.05.2009, 19:48   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Many man
Незнаю так в задании сказано.
Так ведь вам это задание делать и вам его сдавать.
Вот вам и решать, что же в конечном итоге нужно сделать.

Во всяком случае, эта функция не поможет в нахождении суммы составных чисел.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 07.05.2009, 20:06   #5
Many man
Пользователь
 
Регистрация: 25.11.2008
Сообщений: 83
По умолчанию

Тогда нужно уточнить с условием.
Вот есть ещё одна задача незнаю как сделать так чтобы цифРы посчИтАтЬ.
УСлОвиЕ:
РаЗРАБоТаТь рЕкурсивнуЮ фунКцию возврАщающуЮ значЕние
дЛя вычисления кол-Ва циФр в заДанНОм натурАльном чиСЛе
Many man вне форума Ответить с цитированием
Старый 07.05.2009, 20:12   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Many man
УСлОвиЕ:
РаЗРАБоТаТь рЕкурсивнуЮ фунКцию возврАщающуЮ значЕние
дЛя вычисления кол-Ва циФр в заДанНОм натурАльном чиСЛе
Это что? Задание? Или издевательство? В одном регистре писать не можете?

Код:
#include <iostream>
#include <conio.h>
#include <cstdlib>
using namespace std;

int fun(int N)
{
 if(N<10) return 1;
 N /= 10;
 return 1 + fun(N);
}

int main()
{
cout<<fun(100);

getch();
return 0;
}
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 07.05.2009, 21:36   #7
Many man
Пользователь
 
Регистрация: 25.11.2008
Сообщений: 83
По умолчанию

Вот ещё одна задача
Разработать рекурсивную функцию, которая по заданному натуральному числу N (N>=1000) выведет на экран все натуральные числа, не превышающие N, в порядке возрастания. Например для N=8, на экран выводится 1 2 3 4 5 6 7 8
Код:
#include"iostream"
using namespace std;
int fun_r(int N)
{
	if(N>=1000) return 1;
	return 1+fun_r(N);
}
int main
{
cout<<fun_r(1005);

getch();
return 0;
}
Никак не могу сделать
Many man вне форума Ответить с цитированием
Старый 07.05.2009, 21:41   #8
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Код:
#include <iostream>
#include <conio.h>
using namespace std;

void fun(int N)
 {
  if(N==0) return;
  fun(N-1);
  cout<<N<<" ";
 }

int main()
{
fun(8);

getch();
return 0;
}
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить задачу... molodzo Общие вопросы C/C++ 1 05.03.2009 18:44
помогите решить задачу kriss123 Помощь студентам 4 18.02.2009 18:43
Помогите решить задачу pantera_88.07 Общие вопросы C/C++ 2 21.02.2008 15:09
Помогите решить задачу!!! Колян Помощь студентам 3 03.12.2006 22:19