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

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

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2015, 20:01   #1
Pashik1980
 
Регистрация: 01.12.2015
Сообщений: 6
По умолчанию

Ребята помогите!
Написать программу, которая введет значение переменной n и посчитает значение выражения 1/2*3/4*...*(2n-1)/2n
Большое спасибо!

Код:
namespace one
{
    class Program
    {
        static void Main(string[] args)
        {
            int n, i;
            double a , prod=1.00;
            Console.Write("n=");
            n = Convert.ToInt32(Console.ReadLine());
            for (i = 1; i <= n; i++)
            {
                a = (2*i-1)/2*i;
                prod *= a;
            }
            Console.WriteLine("произведение="  +prod);
        }
    }
}

Последний раз редактировалось Stilet; 03.12.2015 в 10:08.
Pashik1980 вне форума Ответить с цитированием
Старый 03.12.2015, 10:09   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Код:
("произведение={0}",prod)
Понял?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.12.2015, 16:25   #3
Pashik1980
 
Регистрация: 01.12.2015
Сообщений: 6
По умолчанию

Не выводит результат произведения
Pashik1980 вне форума Ответить с цитированием
Старый 03.12.2015, 16:37   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Все выводит:
Безымянный.jpg
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.12.2015, 16:57   #5
Pashik1980
 
Регистрация: 01.12.2015
Сообщений: 6
По умолчанию

Результат вычисления a = (2*i-1)/2*i должен быть меньше единицы
при n=1; равно 0,5
при n=2; равно 0,375= (0,5*0,75)
при n=3; равно 0,311=(0,5*0,75*0,83)
при n=4; равно 0,27=(0,5*0,75*0,83*0,875)
Pashik1980 вне форума Ответить с цитированием
Старый 03.12.2015, 17:07   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
при n=1; равно 0,5
Каком n?
у тебя i используется. И на первой итерации получается (2*1-1)/2*1 = 0/2
Понял откуда ноль?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.12.2015, 01:10   #7
Pashik1980
 
Регистрация: 01.12.2015
Сообщений: 6
По умолчанию

вбил уже так, все равно о ;
a = ((2 * i) - 1) / 2 * i

Код:
namespace one
{
    class Program
    {
        static void Main(string[] args)
        {
            int n, i;
            double a, prod = 1.00;
            Console.Write("n=");
            n = Convert.ToInt32(Console.ReadLine());
            for (i = 1; i <= n; i++)
            {
                a = ((2 * i) - 1) / 2 * i; Console.WriteLine("{0}" ,a);
                prod *= a;
            }
            Console.WriteLine("произведение={0}" ,prod);
        }
    }
}

Последний раз редактировалось Stilet; 05.12.2015 в 09:15.
Pashik1980 вне форума Ответить с цитированием
Старый 05.12.2015, 09:23   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Ты что не понимаешь? У тебя на первой же итерации ноль дает, а потом на последующих на ноль умножает. Тебе надо писать так:
Код:
//1/2*3/4
            int i, n = 5; double p = 1;
            for (i = 1; i < n; i++)
            {
                p *= 1.0 * i / (i + 1); i++;
            }
            Console.WriteLine("{0}", p); Console.ReadKey();
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.12.2015, 10:35   #9
Pashik1980
 
Регистрация: 01.12.2015
Сообщений: 6
По умолчанию

Большое спасибо! Я разобрался.
Pashik1980 вне форума Ответить с цитированием
Старый 05.12.2015, 11:00   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Молодец... )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как значение переменной передать другой переменной? - jQuery serauto79 JavaScript, Ajax 4 05.08.2015 17:03
Вычислить значение выражения Oneactive Общие вопросы C/C++ 2 05.03.2014 21:30
Переменной t присвоить значение true, если дата d1, m1 предшествует (в рамках года) дате d2, m2, и значение false иначе Andrew5674 Паскаль, Turbo Pascal, PascalABC.NET 4 11.12.2013 21:37
Дана строка, арифметические выражения вида A x B. Вычислить значение выражения Un1q Паскаль, Turbo Pascal, PascalABC.NET 4 09.12.2013 14:47
Найти значение переменной y в зависимости от значения переменной х Rishi Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 11.05.2011 20:25