Показать полную графическую версию : Написать пару программ с использованием цикла while
Написать 2 программы используя цикл while
1)Найти сумму всех целых чисел в диапазоне, указанном пользователем.
2)Дано натуральное число n. Написать программу, которая вычисляет факториал неотрицательных целых чисел n (т.е. число целое и больше 0). Формула вычисления факториала приведена ниже.
n! = 1*2*3*....*n, (формула вычисления факториала числа n)
0! = 1 (факториал 0 равен 1 (по определению факториала))
iseo,а в чем проблема?
Приведи решение задачи без программного кода.
Схемкой например или чем подобным. А мы уже тут дадим наводящие вопросы, и ты всё решишь сам.
iseo, Любая книга по программированию, первые 2 главы этому учат.
1. Дано поле чисел: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, ..., 1000, 1001, ..., 100000, ..., N. Как пользователем указывается диапазон?
2. Формулу вы привели, в чём сложность решения?
...
int factorial = 1;
// Указать проверку 0! = 1
for(int i = 1; i <= number; i++)
factorial *= i;
...
Диапазон вводиться с клавиатуры через пробел 2 числа.
No Need In Magic
13-02-2011, 14:21
первая решается так:
{a,b - числа, задающие промежуток}
{s - сумма }
long a,b,s;
...
s=(a+b)*( a>b ? a-b+1 : b-a+1) / 2;
#include <iostream.h>
#include <stdlib.h>
void main ()
{
int a,b,i,j;
cout<<"Введите диапазон чисел\n";
cin>>a>>b;
system("cls");
j=0;
for (i=a; i<=b; i++)
j=j+i;
cout<<j<<"\n";
}
я вот так решил первую=*)
Delirium
15-02-2011, 09:57
цикла while »
я вот так решил первую=*) »
В упор не вижу цикла while :)
В упор не вижу цикла while »Он там. :)
iseo, Смотри, а если так сделать.
Запрос на ввод числа.
Цикл: Пока введённое число не равно нулю - выполнять блок
начало блока
Сложить введённое число с переменной хранящей результат (result += number; )
Считать следующее число. (если оно не будет равно нулю, цикл повторяется, когда будет введён нуль, выполнение цикла прерывается)
конец блока
Выводим результат сложения.
#include <iostream.h>
#include <stdlib.h>
void main()
{
int i,j,a;
cin>>i>>j;
system("cls");
a=0;
while(i <=j)
{
a+=i;
i++;}
cout<<a<<"\n";
}
А вот и через цикл while
Вот я написал факториал через for
#include <iostream.h>
void main()
{
int n,f;
cin>>n;
f=1;
for(int i=1; i<=n; i++)
f=f*i;
cout<<f<<"\n";
}
А вот через while
#include <iostream.h>
void main()
{
int f,i,n;
cin>>n;
f=1;
i=1;
while(i<=n)
{
f=f*i;
i++;}
cout<<f<<"\n";
}
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.