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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2020, 15:01   #1
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию Дроби

11.png8
Такая задачка где то ошибку сделал программа выдает результат 44

Код:
#include<stdio.h>
int f1(int n);
int f2(int n);
int main(void)
{
	float total = 0.0;
	int i, a, b = 13, c;
	for (i = 1; i <= 5; i++)//числитель +5 дробей
	{
		a = f1(i);
		b = b - 2;
		c = f2(b);
		total = total + a / c;
	}
	printf("total=%f", total);
	return 0;
}
//////////////////////////////////////////
int f1(int n)
{
	if (n % 2 == 0)
	return n*n;// степень 2
	else
		return n*n*n;// степень 3
}
///////////////////////////////////////////
int f2(int n)
{
	int sum = 0.0, i;
	for (i = n; i >= 3; i = i - 2)//знаменатель
		sum = sum + i;
	return sum;
}

Последний раз редактировалось Alexalex777; 29.05.2020 в 16:53.
Alexalex777 вне форума Ответить с цитированием
Старый 29.05.2020, 17:57   #2
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию

получилось ошибка здесь была
Код:
total = total + ((a*1.0) / c);
Alexalex777 вне форума Ответить с цитированием
Старый 02.06.2020, 16:02   #3
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию

Безымянный рисунок11.png
Еще одна дробь не простая , с ошибкой
Код:
#include<stdio.h>
int f(int num)
{
	int sum=num, i;
	for (i = num; i >= 1; i = i - 1)
		sum = sum - i;
	return sum;
}
int f1(int num1, int num2)
{
	return(num1 + num1 + 1) + (num2 + num2 - 1);
}
void main(void)
{
	int res1, res2,k,i,j;
	float total=0.0;
		for (i = 5, k = 0, j = 21; i > 1; k++, j--, i--)
		{
			res1 = f(i);
			res2 = f1(k + 1,j-1);
			total = total + ((1.0*res1) / res2);
		}
		printf("%f", total);
	return 0;
}

Последний раз редактировалось Alexalex777; 02.06.2020 в 17:19.
Alexalex777 вне форума Ответить с цитированием
Старый 02.06.2020, 17:18   #4
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию

Код:
int sum=num, i;

Последний раз редактировалось Alexalex777; 02.06.2020 в 17:50.
Alexalex777 вне форума Ответить с цитированием
Старый 02.06.2020, 18:07   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Код:
#include <stdio.h>

int main(void)
{
    float total = 0.0;
    int sum = 1, i;
    for (i = 2; i < 6; i++) {
        total += (i - sum) / 42.0;
        sum += i;
    }
    printf("%f", total);
    return 0;
}
Точно ли требуется честно считать числитель и знаменатель каждый раз? Верный ли знаменатель у третьей дроби? У меня сумма получилась отрицательная.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 02.06.2020, 18:41   #6
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию

в 3 дроби ошибся в условии
Безымянный рисунок123.png

Код:
#include<stdio.h>
int f(int num)
{
	int sum=num, i;
	for (i = num; i >= 1; i = i - 1)
		sum = sum - i; <-- тут не верно считает
	printf("%d ", sum);
	return sum;
}
int f1(int num1, int num2)
{
	return(num1 + num1 + 1) + (num2 + num2 - 1);
}
void main(void)
{
	int res1, res2,k,i,j;
	float total=0.0;
		for (i = 5, k = 0, j = 21; i > 1; k++, j--, i--)
		{
			res1 = f(i);
			res2 = f1(k + 1,j-1);
			printf("%d ", res2);
			total = total + ((1.0*res1) / res2);
		}
		//printf("%f \n", total);
	return 0;
}
Alexalex777 вне форума Ответить с цитированием
Старый 02.06.2020, 18:42   #7
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию

BDA да точно ошибка была.Да нужен общий ответ дроби и ответ отрицательный.

-0.142

Последний раз редактировалось BDA; 02.06.2020 в 18:49.
Alexalex777 вне форума Ответить с цитированием
Старый 02.06.2020, 18:49   #8
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Код:
for (i = num - 1; i >= 1; i--)
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 02.06.2020, 19:10   #9
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию

Спасибо! Круто все сходится!!
Alexalex777 вне форума Ответить с цитированием
Старый 03.06.2020, 16:16   #10
Alexalex777
Пользователь
 
Регистрация: 02.04.2020
Сообщений: 97
По умолчанию

еще одна дробь на мой взгляд довольно сложная нужны три функции и два degel для смена знаков.
end.png

Получилось найти факториал но с остальными двумя функциями проблема через n не получалось их решить , наверное функция должна получать 3и числа .Подобных примеров нет не знаю как это сделать.
Код:
#include <stdio.h>
double fak(int);
double chis(int);
double znam(int);
int main(void)
{
	double result = 0.0;
	int j, k,i;
	for (i = 1, j = 2, k = 5; i <= 5, k <= 1, j <= 10; i++, j = j + 2, k--)
		result = result + fak(i);
		//result = result +( chis(j))/(fak(i)*znam(k));
	printf("result=%f/n/n", result);
	return 0;
}
double fak(int n)//++
{
	double result = 1.0;
	int i, j, k;
	for (int i = 1;i <= n; i++)
		result = result*(i);
	//printf("result=%f/n/n", result);//++
	return result;
}
double chis(int n)
{
	int degel = -1,i;
	double  sum = 0.0;
	for (i = 5; i<=n; i--)
		//printf("%d/n",i);
		//sum = (sum*1.0) - (j*degel);
		//printf("sum=%f/n", sum);
		return sum;
}
double znam(int n)
{
	double result = 1.0;
	int i,sum1=0.0;
	for (i = 2; i <= 10; i = i + 2)
		printf("%d/n", i);
		sum1 = sum1 + i;
	return sum1;
}

Последний раз редактировалось Alexalex777; 03.06.2020 в 18:39.
Alexalex777 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C++] Даны две рациональные дроби: a/b и c/d. Сложите их и результат представьте в виде несократимой дроби m/n. lololll Помощь студентам 13 26.02.2019 12:03
Дроби kliuzhik Помощь студентам 6 11.09.2015 07:10
дроби Alexander1205 Общие вопросы C/C++ 7 10.06.2011 20:40
Простые дроби 4aineg Паскаль, Turbo Pascal, PascalABC.NET 5 09.12.2006 15:01