понедельник, 18 мая 2020 г.

Паскаль. Практична робота

Таблиця множення на Паскалі

Досить часто потрібно побудувати на екрані якусь двовимірну таблицю. Це можна реалізувати за допомогою двох циклів для. При цьому один цикл повинен бути вкладений в інший.

Припустимо, нам потрібно вивести на екран таблицю множення.
Алгоритм рішення задачі:

Зовнішній цикл для відповідає за формування рядків. Всього їх буде 10, отже кількість ітерацій циклу повинне бути дорівнює 10.

Внутрішній цикл для формує кожне значення в рядку. Всього значень у рядку 10. Значить і число його ітерацій повинно бути 10.

У тілі вкладеного циклу для відбувається формування конкретного значення шляхом множення поточного значення лічильника зовнішнього циклу на поточне значення лічильника внутрішнього циклу. Оскільки протягом десяти ітерацій внутрішнього циклу, значення лічильника зовнішнього циклу не міняється, то виходить рядок, де числа від 1 до 10 множаться на одне і те ж число.

Після виходу з внутрішнього циклу, перед наступною ітерацією зовнішнього циклу потрібно здійснити перехід на новий рядок. Інакше всі значення будуть записані не у вигляді таблиці, а у вигляді одного рядка.


var
  x,y:0..10;
  s:integer;
begin
  for x:= 0 to 10 do
    for y:= 0 to 10 do
      begin
        s:=(x+1)*(y+1);
        write(s:5);
      end;
   writeln;
end.
 
в такому вигляді таблиця виходить до 11, і останній WriteLn не належить першому циклу, від того і не переносить рядок, після завершення другого. 


 Визначення чверті на координатній площині

 Всім відома прямокутна (декартова) система координат, в якій дві перпендикулярні осі ділять площину на чверті. У першу чверть потрапляють точки, у яких обидві координати (X і Y) більше нуля. У другу: х <0 span="span">, у> 0; третю: х <0, у <0 span="span">; четверту: х> 0, у <0 span="span">.

Допустимо, потрібно написати програму, що визначає по координатам точки, в якій чверті вона знаходиться.
Алгоритм рішення задачі:

Для вирішення цього завдання доречно використовувати умовні оператори, якщо-інакше вкладені одна в одну.



var
    x,y: real;
 
begin
    write ('x = '); read (x);
    write ('y = '); readln (y);
 
    write ('Номер четверті координатної  площини: ');
    if (x > 0) and (y > 0) then
        writeln ('I')
    else
        if (x < 0) and (y > 0) then
            writeln ('II')
        else
            if (x < 0) and (y < 0) then
                writeln ('III')
            else
                if (x > 0) and (y < 0) then
                    writeln ('IV')
                else
                    writeln ('-. Точка лежить на осі.');
 
readln
end.

Комментариев нет:

Отправить комментарий