I етап. Аналіз умови задачі, визначення вхідних даних і кінцевих результатів
Вхідні дані: числa.
Кінцеві результати: модулі чисел .
II етап. Побудова інформаційної моделі
Очевидно, інформаційною моделлю розв’язування цієї задачі є математична модель, яка складається з формул, за якими знайдемо модулі чисел .
Ці формули виглядатимуть так:
s = |s|
III етап. Вибір програмних засобів для розв’язування задачі
Прикладним програмним засобом, який можна використати для розв’язування задачі, може бути, наприклад, програма-калькулятор або табличний процесор. Або можна скласти спеціальну програму для розв’язування саме цієї задачі, використовуючи одну з мов програмування.
IV етап. Складання алгоритму розв’язування задачі
V етап. Отримання комп’ютерної моделі
program mas5;
Uses CRT;
var a: array[1..1000] of real;
n, i: integer;
begin
writeln ('Модуль чисел');
TextColor (06);
write('Введiть кiлькiсть чисел(<1000) - ');
readln (n);
for i:=1 to n do
begin
write ('Число [', i, '] = ');
readln(a[i]) ;
end;
for i:=1 to n do
if a[i] < 0 then a[i]:= abs(a[i]);
TextColor (03);
writeln ('Модуль чисел');
for i:=1 to n do writeln('Число [', i, '] = ',a[i]);
readln;
end.
PRINT "Њ®¤г«i зЁбҐ« "
'Модулi чисел
INPUT "‚ўҐ¤iвм Єi«мЄiбвм Ґ«Ґ¬Ґвiў ¬ бЁўг - ", N
'Кiлькiсть чисел масиву
DIM A(N)
FOR I = 1 TO N
PRINT "—Ёб«® ("; I; ")= ",
'Число
INPUT A(I)
NEXT I
FOR I = 1 TO N
A(I) = ABS(A(I))
NEXT I
PRINT " "
FOR I = 1 TO N
PRINT "Њ®¤г«м Ґ«Ґ¬Ґвг "; I; " Ўг¤Ґ = "; A(I)
'Модуль елементу[" + i + "] буде -
NEXT I
INPUT z
TextWindow.WriteLine("Модуль чисел")
TextWindow.Write( "Кiлькiсть чисел масиву = ")
n=TextWindow.ReadNumber()
For i = 1 To n
TextWindow.Write("Число[" + i +"]= ")
a[i] = TextWindow.ReadNumber()
EndFor
for i=1 to n
a[i]= Math.abs(a[i])
EndFor
TextWindow.WriteLine(" ")
TextWindow.WriteLine("Модуль чисел")
For i=1 To n
TextWindow.WriteLine("Число[" + i + "] = " + a[i])
EndFor
#include <conio.h>
#include <iostream>
#include <cmath>
int main(void)
{
int i,n;
double a[1000];
setlocale(LC_ALL, "");
std::cout << "Модулi чисел\n";
std::cout << "Kiлькiсть чисел (<1000) = ";
std::cin >> n;
for (int i = 1; i < n+1; i++) {
std::cout <<i << "-е число: ";
std::cin >> a[i];
}
std::cout << "\nМодулi чисел\n";
for (int i = 1; i < n+1; i++) {
std::cout << abs(a[i]) << std::endl;}
getch();
return 0;
}
#include <stdio.h>
#include <math.h>
int main(void)
{
int i,n;
float a[1000];
printf ("Њ®¤г«i зЁбҐ« \n");
printf ( "‚ўҐ¤iвм Єi«мЄiбвм Ґ«Ґ¬Ґвiў ¬ бЁўг (<1000) - ");
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
printf("…«Ґ¬Ґв [%d] = ",i);
scanf("%f", &a[i-1]);
}
for (i = 1; i <= n; i++)
{
if (a[i-1]<0) {a[i-1]=abs(a[i-1]);}
}
for (i = 1; i <= n; i++)
{
printf("\n %f ",a[i-1]);
}
scanf("\n");
return 0;
}
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Модулi чисел");
Console.Write("Kiлькiсть чисел = ");
int z = Convert.ToInt32(Console.ReadLine());
int n = z+1;
Console.WriteLine(" ");
int[] num = new int[n];
for (int i = 1; i <= num.Length - 1; i++) {
Console.Write(i+"-е число: ");
num[i] = Int32.Parse(Console.ReadLine());
}
for (int i = 1; i <= num.Length - 1; i++) {
num[i] = Math.Abs(num[i]);
}
Console.WriteLine(" ");
for (int i = 1; i <= num.Length - 1; i++) {
Console.Write(num[i]+" ");
}
Console.ReadKey();
}
}
Class Program
Shared Sub Main()
Console.WriteLine("Модулi чисел")
Console.Write("Kiлькiсть чисел = ")
Dim n As Integer = Convert.ToInt32(Console.ReadLine())
Console.WriteLine(" ")
Dim nums(n) As Integer
For i As Integer = 1 To nums.Length - 1
Console.Write("{0}-е число: ", i)
nums(i) = Double.Parse(Console.ReadLine())
Next
For i As Integer = 1 To nums.Length - 1
nums(i) = Math.abs(nums(i))
Next
Console.WriteLine(" ")
Console.WriteLine("Модулi чисел ")
For i As Integer = 1 To nums.Length - 1
Console.Write("{0} ", nums(i))
Next
Console.ReadKey()
End Sub
End Class
print('Модулі елементів масиву')
N = int(input('Модулi чисел = '))
a= [float (input('Введіть елемент массиву - ')) for i in range(N) ]
print(' ')
for i in range (len(a)):
print('Модуль числа елементу',i+1,' буде - ', (a[i]**(2))**(1/2))
input()
Розв’язування задачі в Pascal ABC.NET
procedure Form1.button2_Click(sender: Object; e: EventArgs);
begin
Close;
end;
procedure Form1.button1_Click(sender: Object; e: EventArgs);
var i:integer;
a:array[1..5]of real;
begin
for i:=1 to 5 do
begin
a[i]:=StrTofloat(richTextBox1.Lines[i-1]);
end;
for i:=1 to 5 do
a[i]:=abs(a[i]);
for i:=1 to 5 do
Label4.Text:= FloatTostr(round (a[1]*100)/100)+ (' ')
+ FloatTostr(round (a[2]*100)/100)+ (' ')
+ FloatTostr(round (a[3]*100)/100)+ (' ')
+ FloatTostr(round (a[4]*100)/100)+ (' ')
+ FloatTostr(round (a[5]*100)/100)+ (' ');
end;
procedure Form1.button3_Click(sender: Object; e: EventArgs);
begin
Label4.Text:= (' ');
richTextBox1.Text:= (' ');
end;
Розв’язування задачі в lazarus
procedure TForm1.Button3Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.FormWindowStateChange(Sender: TObject);
begin
WindowState := wsNormal;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.Text:=('');
Memo2.Text:=('');
end;
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
a:array[1..5]of real;
begin
for i:=1 to 5 do
a[i]:=StrToFloat(Memo1.Lines[i-1]);
for i:=1 to 5 do
Memo2.Lines.Append(FloatToStr(abs(a[i])));
end;
VI етап. Дослідження отриманих результатів на реальність і на відповідність умові
Після одержання підсумкової програми маємо проаналізувати її реальність.
Якщо таке дослідження виявляє помилки, потрібно шукати їхні причини, виправляти їх і знову проходити етапи, наступні за тим, на якому виявилися помилки.