Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Нужна помощь (http://www.tehnari.ru/f41/t35459/)

Ciber 26.04.2010 16:14

Нужна помощь
 
Даны натуральные числа n, a1,a2,..., an. Определить количество членов ak последовательности a1,a2,..., an удовлетворяющих условию 2^k<ak<k!

На языке Delphy.

AlexZir 27.04.2010 06:26

Нужна помощь? Пожалуйста. Алгоритм решения примерно такой:
При решении используйте функции для вычисления k-ой степени 2-ки и факториала числа k. Введенные члены последовательности сохраняйте в одномерный целочисленный массив из n элементов, затем в цикле анализируйте каждое число, сравнивая с вычисленными значениями степени 2-ки и факториала. Если число попадает в диапазон - результирующий счетчик увеличивайте на 1. По окончании анализа выведите содержимое результирующего счетчика на экран. Графический интерфейс для решения этой задачи создавать не обязательно, хотя он добавит солидности вашему коду.

А программу при наличии желания вы напИшите самостоятельно.

Ciber 23.05.2010 17:56

а программу можете написать???

Vladimir_S 23.05.2010 18:07

Цитата:

Сообщение от Ciber (Сообщение 337836)
а программу можете написать???

И это всё, что у Вас родилось за месяц?

AlexZir 23.05.2010 18:16

Если я за вас напишу программу - не факт, что вы сможете объяснить всё в листинге при сдаче, из-за этого неизбежно у преподавателя появятся вопросы к вам. Поэтому попытайтесь самостоятельно сделать и выложить сюда, а мы вам поможем исправить, если будут проблемы или ошибки.

Ciber 24.05.2010 20:47

Цитата:

Сообщение от AlexZir (Сообщение 337842)
Если я за вас напишу программу - не факт, что вы сможете объяснить всё в листинге при сдаче, из-за этого неизбежно у преподавателя появятся вопросы к вам. Поэтому попытайтесь самостоятельно сделать и выложить сюда, а мы вам поможем исправить, если будут проблемы или ошибки.

var
Form1: TForm1;
n:integer;
implementation
{$R *.dfm}
procedure TForm1.Edit1Change(Sender: TObject);
begin
n:=StrToInt (edit1.text);
StringGrid1.ColCount:=n;
end;
function fac(n:integer):integer;
var i:integer;
begin
result:=1;
for i:=1 to n do
result:=result*i;
end;
procedure TForm1.Button1Click(Sender: TObject);
var a:array [1..100] of real;
k,s,i:integer;
begin
K:=StrToInt (edit2.Text);
s:=0;
For i:=1 to n do
a[i]:=StrToFloat(StringGrid1.Cells [i,1]);
for i:=1 to n do
If (a[i]>exp(k*ln(2))) and (a[i]<fac(k))
then s:=s+1;
if s>0 then
Label4.Caption:=IntTostr (s)
else ShowMessage ('Проверьте условии, оно задано неверно');
end;
end.
Вот прога, к-рую составил, но почему то не работает, проверьти пожалуйста


Часовой пояс GMT +4, время: 18:46.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.