Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
1

работа с циклом for

05.01.2011, 19:04. Показов 1199. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят, я чот запутался с реализацией этой задачи
https://www.cyberforum.ru/atta... 1294243087

как я понял там должен быть цикл типа
C++
1
2
for(int i=0;i<=n;i++)
p*=2*n/(2*n+1);
только вот меня возмущает "p*=", результат у меня всегда равен нулю.......
Миниатюры
работа с циклом for  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.01.2011, 19:04
Ответы с готовыми решениями:

Работа с циклом for
Господа, здравствуйте, вопрос, предположительно, будет странный, но важный для меня, так как не...

Работа с циклом do while
Здравствуйте! есть задача в которой используется метод прогонки с проверкой условия. я использовала...

Работа с циклом if else.
Доброго утра, дня или вечера! Кому как :) Я понимаю, что, возможно, задаю очень глупый...

Работа с циклом
Приветствую! Требуется ваша помощь. Кратко опишу проблематику: Допустим у нас есть сборка...

18
Эксперт С++
4727 / 2548 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
05.01.2011, 19:11 2
Bogdan808, Покажите весь Ваш код.
0
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:13  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<conio.h>
#include<stdio.h>
#include<math.h>
void main(){
clrscr();
float n,s;
printf("Введите натуральное число n: ");
scanf("%f",&n);
for(float i=0;i<=n;i++){
s*=2*n/(2*n+1);
}
printf("= %f",s);
getch();
}
0
Эксперт С++
4727 / 2548 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
05.01.2011, 19:17 4
Цитата Сообщение от Bogdan808 Посмотреть сообщение
float n,s;
Вот здесь s присвойте начальное значение: 1.0
0
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:22  [ТС] 5
Действительно, не подумал что s сама по себе без инициализации равна нулю!
хех, век живи век учись!
0
42 / 42 / 13
Регистрация: 04.01.2011
Сообщений: 125
05.01.2011, 19:22 6
Все равно 0 получается ))
у меня такой код получился
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
/*Дано натуральное число n. Вычислить произведение 
n членов ряда: P=2/3*4/5*6/7*...*2n/(2n+1)*/
#include <iostream>
using namespace std;
int main(void)
{setlocale (LC_ALL, "Russian");
cout<<"Введите количество членов последовательности P=2/3*4/5*6/7*...*2n/(2n+1): ";
float P=1,n;
cin>>n;
for (int i=0;i<n;i++)
P*=(2*i)/(2*i+1);
cout<<P<<endl;
return 0;}
0
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:24  [ТС] 7
Ну так если у тебя i=0 то понятно что ответ будет нуль!
вот тут
C++
1
2
for (int i=0;i<n;i++)
P*=(2*i)/(2*i+1);
0
42 / 42 / 13
Регистрация: 04.01.2011
Сообщений: 125
05.01.2011, 19:25 8
Все равно 0 ))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
/*Дано натуральное число n. Вычислить произведение 
n членов ряда: P=2/3*4/5*6/7*...*2n/(2n+1)*/
#include <iostream>
using namespace std;
int main(void)
{setlocale (LC_ALL, "Russian");
cout<<"Введите количество членов последовательности P=2/3*4/5*6/7*...*2n/(2n+1): ";
float P=1,n;
cin>>n;
for (int i=1;i<=n;i++)
P*=(2*i)/(2*i+1);
cout<<P<<endl;
return 0;}
0
Maniac
Эксперт С++
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
05.01.2011, 19:28 9
C++
1
2
for (int i=2; i<= n*2;i += 2)
    P*= double(i)/double(i + 1);
0
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:28  [ТС] 10
Не допиливаю, зачем ты в формуле используешь i ?
посмотри внимательно на мой for
0
Эксперт С++
4727 / 2548 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
05.01.2011, 19:28 11
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<conio.h>
#include<stdio.h>
#include<math.h>
void main(){
clrscr();
float n,s=1.;
printf("Введите натуральное число n: ");
scanf("%f",&n);
for(float i=1;i<=n;i++){
s*=2*i/(2*i+1);
}
printf("= %f",s);
getch();
2
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:30  [ТС] 12
Хотя.... чо я горожу, у меня то формула не правильная!
0
42 / 42 / 13
Регистрация: 04.01.2011
Сообщений: 125
05.01.2011, 19:30 13
Цитата Сообщение от Bogdan808 Посмотреть сообщение
Не допиливаю, зачем ты в формуле используешь i ?
посмотри внимательно на мой for
Но ведь у тебя значение n не меняется.
Поправь меня если я не прав.
0
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:31  [ТС] 14
Ты все прально сделал, это я тупанул, i там значение ведь идет по нарастающей.....
хотя.. я уже запутался опять... ппц!
0
42 / 42 / 13
Регистрация: 04.01.2011
Сообщений: 125
05.01.2011, 19:34 15
А расскажите мне почему у i тип float?

Добавлено через 1 минуту
и где используются фунции описанные в <math.h>?
0
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:36  [ТС] 16
Цитата Сообщение от Sokolov Посмотреть сообщение
А расскажите мне почему у i тип float?
Да не почему, большинство переменных имеют тип float , вот я рефлекторно и набрал.

и где используются функции описанные в <math.h>?
Это еще старый С++ с синим экранном и жуткого вида интерфейса, а библиотека эта для математических функций, возведение в степень и тд!
0
42 / 42 / 13
Регистрация: 04.01.2011
Сообщений: 125
05.01.2011, 19:37 17
Цитата Сообщение от Bogdan808 Посмотреть сообщение
Да не почему, большинство переменных имеют тип float , вот я рефлекторно и набрал.
Это правильно, но почему когда i имеет тип int то значение выдается 0? Ведь там значение s дробное т.е. float
0
1 / 1 / 0
Регистрация: 08.11.2010
Сообщений: 20
05.01.2011, 19:45  [ТС] 18
Цитата Сообщение от Sokolov Посмотреть сообщение
Это правильно, но почему когда i имеет тип int то значение выдается 0? Ведь там значение s дробное т.е. float
Я не совсем понял твоего вопроса....
Вообще если пользоваться твоей формулой то получается что с i производятся различные действия, и ответ этих действий чаще всего дробный...
тоесть если мы собираемся оперировать дробными числами (i в том числе), то вообще разумно использовать тип float.
Ну и если мы ставим int то ясень пень будет нуль, int округляется и ничо с ним не сделаешь!
1
42 / 42 / 13
Регистрация: 04.01.2011
Сообщений: 125
05.01.2011, 19:49 19
Да,да понял ))
0
05.01.2011, 19:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.01.2011, 19:49
Помогаю со студенческими работами здесь

Работа с циклом
Хотел создать список всей музыки на внешнем жестком диске с помощью BAT файлаfor /r H:\ %%B in...

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

Работа с Циклом
Добрый вечер такой вопрос $(document).ready(function(){ ...

работа с циклом
Помогите пожалуйста!!! В памяти находятся пять чисел. Найдите наименьшее из них.

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

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


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru