Перейти к содержанию

Дано натуральное число n.


Росляев

Рекомендуемые сообщения

Помогите, пожалуйста, написать программу на Free Pascal.

1. Дано натуральное число n и действительное число х. Вычислить:

x( x - n )( x - 2 n )( x - 3 n )…( x – n^2);

2. По формуле задания №1 для действительного x>0 определить значение n

для произведений, дающих в итоге значение больше 1000.

Ссылка на комментарий
Поделиться на другие сайты

Росляев, написал на Delphi 7

 

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
Edit1: TEdit;
Label1: TLabel;
Button1: TButton;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
procedure Button1Click(Sender: TObject);
 private
{ Private declarations }
 public
{ Public declarations }
 end;

var
 Form1: TForm1;
 a,N,xxl,x:integer;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin // Задание #1
x:=StrToInt(Edit2.text);
N:=StrToInt(Edit1.Text);
a:=1;
xxl:=x; // По сих момент должно быть понятно.
while (N>=a) do // начинаем цикл что бы опеределить количество множителей.
begin
xxl:=xxl*(x-a*N); // Умножаме и вычисляем множители
a:=a+1; // Считаем количесво повторений цикла и множитель для N
end;
Label1.Caption:= IntToStr(xxl);
// Задание №2. Убираем последюю строчку кода(Label1.Caption:= IntToStr(xxl);)
if (X>0) and (xxl>1000) then // В операторе ветвления то же непонятного мало =)
ShowMessage(IntToStr(xxl))
else ShowMessage('Выввели значение X<0  или результат не превышает 1000. Ответ не может быть получен!')
end;
end.

 

основная рабочая часть кода:

 

begin // Задание #1
x:=StrToInt(Edit2.text);
N:=StrToInt(Edit1.Text);
a:=1;
xxl:=x; // По сих момент должно быть понятно.
while (N>=a) do // начинаем цикл что бы опеределить количество множителей.
begin
xxl:=xxl*(x-a*N); // Умножаме и вычисляем множители
a:=a+1; // Считаем количесво повторений цикла и множитель для N
end;
Label1.Caption:= IntToStr(xxl);
// Задание №2. Убираем последюю строчку кода(Label1.Caption:= IntToStr(xxl);)
if (X>0) and (xxl>1000) then // В операторе ветвления то же непонятного мало =)
ShowMessage(IntToStr(xxl))
else ShowMessage('Выввели значение X<0  или результат не превышает 1000. Ответ не может быть получен!')
end;

 

 

В Паскаль сам переделаешь :)

заданияexe.rar

Изменено пользователем 4543
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

Вот переделал по Паскаль первую программу.

Program Lab4;
Uses CRT;
Var a,N,xxl,x:integer;
Begin
Write('x='); readln(x);
Write('n='); readln(N);
a:=1;
xxl:=x;
while(N>=a) do
begin
xxl:=xxl*(x-a*N);
a:=a+1;
end;
Writeln('Ответ=',xxl);
ReadLn();
End.

Может что-то неправильно.

Ссылка на комментарий
Поделиться на другие сайты

Вот мой вариант.Первая программа:

Program Lab1;
var n,i:integer;
x,s:real;
begin
WriteLn('Введите x');
readln(x);
writeln('Введите n');
readln(n);
s:=x;
for i:=1 to n do
s:=s*(x-i*n);
WriteLn('Ответ: ', s:8:3);
ReadLn();
end.

Вторая программа:

Program Lab2;
var n,i:integer;
x,s:real;
begin
WriteLn('Введите x');
readln(x);
repeat
 inc(n);
 s:=x;
 for i:=1 to n do
s:=s*(x-i*n);
until s>=1000;
Write('n=', n);
ReadLn();
end.

  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

Росляев, а тебе это зачем нужно?

давай еще задания, мы тебе все сделаем)

 

P.S. Условие второй програмы чесно говоря не понял, ну ладно, тут еще умные люди вроде бы сделали :)

Изменено пользователем 4543
Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста:

Дана квадратная вещественная матрица размерности n. Найти количество

отрицательных элементов, стоящих: выше главной диагонали; ниже главной диагонали.

Ссылка на комментарий
Поделиться на другие сайты

Росляев, это задача для 4543?Код:

Program R;
Const n=3;
Var a:array[1..n,1..n] of real;
i,j:byte;
pod,nad:integer;

begin
randomize;
pod:=0;
nad:=0;
for i:=1 to n do
 begin
for j:=1 to n do
  begin
	a[i,j]:=random(10000)-5000+random;
	Write(' ', a[i,j]:9:3);
	if a[i,j]<0 then
	  if not(i=j) then
		if i<j then inc(nad)
		else inc(pod);
  end;
WriteLn;
 end;
WriteLn('Количество отрицательных элементов над главной диагональю: ', nad);
WriteLn('Количество отрицательных элементов под главной диагональю: ', pod);
end.

Ссылка на комментарий
Поделиться на другие сайты

Росляев, это задача для 4543?Код:

Program R;
Const n=3;
Var a:array[1..n,1..n] of real;
i,j:byte;
pod,nad:integer;

begin
randomize;
pod:=0;
nad:=0;
for i:=1 to n do
 begin
for j:=1 to n do
  begin
	a[i,j]:=random(10000)-5000+random;
	Write(' ', a[i,j]:9:3);
	if a[i,j]<0 then
	  if not(i=j) then
		if i<j then inc(nad)
		else inc(pod);
  end;
WriteLn;
 end;
WriteLn('Количество отрицательных элементов над главной диагональю: ', nad);
WriteLn('Количество отрицательных элементов под главной диагональю: ', pod);
end.

А можешь дать подробные коментарии и объяснить принцип действия....

Ссылка на комментарий
Поделиться на другие сайты

4543, что именно непонятно? Вроде программа очень простая.

Можешь объяснить сначала основной принцип действия, а потом коментарии в коде?

Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Похожий контент

    • SOL.
    • Дмитрий С1990
      От Дмитрий С1990
      Был зашифрован ПК по средствам подключения по rdp  к учетной записи администратора и подобранному паролю.
      Addition.txt virus.7z FRST.txt
    • Hard07
      От Hard07
      Не удаляется касперским, удалил уже все приложения которые могли его принести, в том числе торрент, что делать?
    • animewko25
      От animewko25
      Добрый день!
      Подскажите каким способом можно перенести базу данных SQL KSC на другой диск.
      Финт с заменой буквы не проходит,может быть есть какой нибудь мануал
    • KL FC Bot
      От KL FC Bot
      Как передать информацию с компьютера, который не подключен ни к Интернету, ни к локальной сети организации? Израильский исследователь Мордехай Гури в течение многих лет занимается поиском нетривиальных методов, с помощью которых атакующие могли бы похищать данные в таких условиях. Мы уже не раз писали о его исследованиях. Недавно с разницей в четыре дня Гури опубликовал сразу две новые научные работы. В одной из них он продемонстрировал, как превратить компьютер в радиопередатчик, манипулируя загрузкой данных в оперативную память, а во второй — как использовать в качестве «акустического шпиона» обычный компьютерный монитор.
      Гипотетическая ситуация
      Во всех своих работах Мордехай Гури решает одну и ту же задачу. Условия такие:
      на некоем компьютере хранятся или обрабатываются максимально секретные данные; для обеспечения безопасности этих данных система изолирована от сети и для верности размещена в отдельном помещении с ограниченным доступом; гипотетический злоумышленник знает, как установить на компьютер вредоносное программное обеспечение, которое может добыть эти данные, и теперь он должен каким-то образом скачать их. Задача заражения изолированного компьютера сама по себе сложна, но вовсе не невыполнима. Заразить компьютер можно, воспользовавшись разгильдяйством оператора «секретного» компьютера, подключающего к ПК зараженную флешку со своими файлами (а это вполне реальный сценарий). Теоретически злоумышленники могут установить зловред в систему заранее: на заводе производителя или во время доставки компьютера заказчику. Или (самый простой случай) сотрудника организации могут подкупить. А вот для эксфильтрации данных злодей использует атаку по сторонним каналам.
       
      View the full article
×
×
  • Создать...