Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 16.09.2013
Сообщений: 85

Сделать так, чтобы выводилось 3 знака после запятой и численное значение В было нормальным

12.04.2016, 00:35. Показов 1948. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Программа выводит в Мемо1 вот это:
Численное значение определенного интеграла В= 3.5E+003
A[ 2]=
X Y
1.000000E+000 -9.048390E-002
4.000000E+000 -7.128836E-002
7.000000E+000 -3.214845E-002
1.000000E+001 1.261199E-003
A[ 3]=
X Y
1.000000E+000 -6.032260E-002
4.000000E+000 -4.752557E-002
7.000000E+000 -2.143230E-002
1.000000E+001 8.407993E-004
A[ 4]=

Можете сделать так, чтобы выводилось 3 знака после запятой и там где численное значение В было нормальным.
Вот текст процедур:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
procedure TForm1.Button1Click(Sender: TObject);
type
  tmx = array[1..100] of extended;
  tmy = array[1..100, 1..100] of extended;
var
  sa, sx, sy: string;
  Ma, Mx: tmx;
  My: tmy;
  An, ak, da, xn, Dx, b, c, d, eps, int: extended;
  k, n, n1, er, km: integer;
  function Pwr(x: real): real;//Возведение в степень (1/3)
  begin
    if x = 0 then Pwr := 0
    else
    if x > 0 then pwr := exp(ln(x) * (1 / 3)) else
      pwr := -exp(ln(abs(x)) * (1 / 3));
  end;
  
  procedure tab(b, an, ak, da, xn, dx: real; n: integer; var Mx, Ma: tmx; var My: tmy);
  var
    i, j: integer;
    x, y, a: real;
  begin
    j := 1;
    a := an;
    while a <= ak do
    begin
      X := xn;
      i := 1;
      while i <= n do
      begin
        y := (cos(b) * sin(sqrt(x))) / (a * sqrt(x + 5 * pwr(3 * x)));
        mx[i] := x;
        my[j, i] := y;
        i := i + 1;
        x := x + dx
      end;
      ma[j] := a;
      a := a + da;
      j := j + 1;
    end;
  end;
  
  function f(x: real): real;
  begin
    f := x * x * x * exp(2 * x);
  end;
  
  procedure integral(c, d, eps: real; var n1, er: integer; km: integer; var int: real);
  var
    y1, yn, h, del, int1, x: real;
    i, j: integer;
  begin
    y1 := f(c);
    yn := f(d);
    int1 := 0;
    n1 := 2;
    er := 1;
    j := 1;
    while j <= km do
    begin
      h := (d - c) / n1;
      x := c + h;
      int := 0;
      for I := 1 to n1 - 1 do
      begin
        int := int + f(x);
        x := x + h;
      end;
      int := h * (y1 / 2 + yn / 2 + int);
      del := abs(int1 - int);
      if del < eps then
      begin
        j := km;
        er := er - 1;
      end
      else
      begin
        int1 := int; n1 := n1 * 2;
      end;
      j := j + 1;
    end;
  end;
  
  procedure rezout(var mx: tmx; var ma: tmx; var my: tmy; k, n: integer);
  var
    i, j: integer;
    sa, sx, sy, kk: string;
  begin
    for j := 1 to k do
    begin
      str(j:14, kk);
      memo1.lines.add(' A[' + kk + ']=' + sa);
      memo1.lines.add('X           Y');
      for i := 1 to n do
      begin
        str(Mx[i]:14, sx);
        str(My[j, i]:14, sy);
        memo1.lines.add(sx + '     ' + sy);
      end;
      
      
      
      
      
    end;
  end;
 
begin
  an := strtofloat(edit1.text);
  ak := strtofloat(edit2.text);
  da := strtofloat(edit3.text);
  xn := strtofloat(edit4.text);
  dx := strtofloat(edit5.text);
  n := strtoint(edit6.text);
  c := strtofloat(edit7.text);
  d := strtofloat(edit8.text);
  eps := strtofloat(edit9.text);
  km := strtoint(edit10.text);
  integral(c, d, eps, n1, er, km, int);
  if er = 1 then
  begin
    str(km:14, sa);
    memo1.lines.add('Интеграл не найден за ' + sa + 'итераций');
    exit
  end;
  b := int;
  str(Int:14, sy);
  memo1.lines.add('Численное значение определенного интеграла В=' + sy);
  Tab(B, An, ak, da, xn, dx, n, mx, ma, my);
  k := trunc((ak - an) / da) + 1;
  rezout(mx, ma, my, k, n);
end;
 
 
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.04.2016, 00:35
Ответы с готовыми решениями:

Как сделать так, чтобы когда на 3-ёх " Label " Было одинаковое значение, то на 4-ом появлялся текст ?
На фотографии то что я хочу сделать я уже сделал крестики нолики при нажатии на кнопку в верхнем квадратике появляется соответствующий...

Как сделать так чтобы в паскале после знака запятой оставалось только 4 знака?
Как сделать так чтобы в паскале после знака запятой оставалось только 4 знака? Например число 2,36739920726376 отображалось как 2,3673. ...

Вывод в консоль чисел с плавающей точкой: как сделать, чтобы после запятой было только два знака?
как сделать что бы после запятой было только два знака? спасибо

1
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
12.04.2016, 12:11
Цитата Сообщение от ivan1212 Посмотреть сообщение
чтобы выводилось 3 знака после запятой
Delphi
1
2
3
memo1.lines.add('X           Y');
for i := 1 to n do
memo1.lines.add(format('%.3f',[Mx[i]]) + '     ' +format('%.3f',[My[j,i]]));
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.04.2016, 12:11
Помогаю со студенческими работами здесь

Как сделать так, чтобы переводил буквы в верхний регистр после точки, восклиц.знака,вопросительного знака
Есть код на языке Perl. Переводит буквы в верхний регистр. Как сделать так, чтобы переводил буквы в верхний регистр после точки,...

Используя рекурсию, сделать так, чтобы значение многочлена степеней выводилось от 0 до N
Дана рекурентная формула:. Я вывел рекурсию, но как сделать, чтобы значение многочлена степеней выводилось от 0 до N. Прилаживаю код...

Как сделать так , чтобы каждое значение выводилось в текст в бокс с названием?
Помогите!! Создать проект «Расчет стоимости нескольких порций мороженного» Стоимость должна вычисляться в цикле. Надо сделать так...

Как выбирать монитор так, чтобы изображение было нормальным
У меня монитор LG FLATRON L1515S. Есть еще монитор ACER AL1751. Так вот, собственно, вопрос вот в чем: если сравнить какую эти два...

измените программу. программа умножает числа.нужно сделать так чтобы при умножении на отрицательное число не было знака минус.
data segment beginstr db 'Vvedite chisla...$' errorstr db 'Oshibka: nepravilnoe chislo!$' endstr db 'Prodoljit? Y - da: $' ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru