singlepost

Помогите решить три задачи на Паскале << На главную или назад  

1. Задана таблица температур за три летних месяца. определить минимальную температуру июня?

program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils;
var m:array[1..90] of byte;
min:byte;
i:byte;
begin
{ TODO -oUser -cConsole Main : Insert code here }
writeln('Vvedite temperaturu');
for I := 1 to 90 do
begin
write('m[',i,']=',m[i]);
read(m[i]);
end;
min:=1;
for I := 1 to 30 do
if min>m[i] then
min:=m[I];
write(min);
readln;
readln
end.

Правильно написал?

16 ответов в теме “Помогите решить три задачи на Паскале”

  1. 16
    Серега Губченко ответил:

    количество дней в июне июле и августе 90?? О.о!

  2. 15
    Ванька Колпаков ответил:

    Спасиб большое)))

  3. 14
    Сергей Безрукавников ответил:

    program n1;
    uses crt;
    const n=3;
    var a: array [1..n,1..n] of integer;
    i,j,t:integer;
    begin
    clrscr;
    randomize;
    for i:=1 to n do
    begin
    writeln;
    for j:=1 to n do
    begin
    a[i,j]:=1+random(5);
    write(a[i,j]:3);
    end;
    end;
    writeln;
    for i:=1 to n do
    begin
    t:=0;
    for j:=1 to n do
    if a[i,j]=5 then t:=1;
    if t=0 then writeln(i);
    end;
    end.

    Всё работает. Осталось прикрутить фамилии и предметы.

  4. 13
    Ванька Колпаков ответил:

    Не работает((

  5. 12
    Сергей Безрукавников ответил:

    for i:=1 to 25 do
    begin
    t:=0;
    for j:=1 to 10 do
    if a[i,j]=5 then t:=1;
    if t=0 then writeln(i);
    end;

    Примерно так.

  6. 11
    Ванька Колпаков ответил:

    А как это правильно в цикле прописать?

    напишите пожалуйста)))

  7. 10
    Ванька Колпаков ответил:

    А как это правильно в цикле прописать?

  8. 9
    Сергей Безрукавников ответил:

    _______ |Математика|Физ-ра|Ин.яз|
    Иванов__|_____1____|__ 5__|__3__|
    Сидоров_|_____4____|__3__|__2__|
    Петров__|_____5____|__ 5__|__3__|

    Зачем прогонять по столбцам? Тут построчно надо. И смотреть лучше на вхождение пятерки в строку, тоесть если есть хоть одна 5 в строке то перейти на следущий шаг, если вхождения небыло вывести на экран номер строки.

  9. 8
    Ванька Колпаков ответил:

    #3
    Сергей BeZr Безрукавников
    вчера в 22:02
    2 – Простой 2-мерный массив, Строки ученики, столбцы предметы, заполнить оценками и построчно смотреть на отсутствие пятерок.

    Эт прогнать по столбцам?
    for j:=1 to 25 do
    if m[i,j]<>5 then….

  10. 7
    Ванька Колпаков ответил:

    Спасиб)))

  11. 6
    Сергей Безрукавников ответил:

    >>Это же вроде просто находит второстепенную диагональ, а вот как сделатьчтобы они заменялись?

    Наверно меня не правильно поняли, вот пример перестановки через обратную диагональ.

    program n1;
    uses crt;
    const n=3;
    var
    a,b: array [1..n,1..n] of integer;
    i,j:integer;
    begin
    clrscr;
    randomize;
    for i:=1 to n do
    begin
    writeln;
    for j:=1 to n do
    begin
    a[i,j]:=random(10);
    write(a[i,j]:3);
    end;
    end;
    writeln;
    writeln;
    for i:=1 to n do
    begin
    writeln;
    for j:=1 to n do
    begin
    b[i,j]:=a[n+1-j,n+1-i];
    write(b[i,j]:3);
    end;
    end;
    readln;
    end.

  12. 5
    Ванька Колпаков ответил:

    ********
    min:=m[1];
    for i:=1 to 30 do
    if m[i]<min then min:=m[i];
    writeln(min);
    ********

    это тоже самое что и

    for I := 1 to 30 do
    if min>m[i] then
    min:=m[I];
    write(min);

  13. 4
    Ванька Колпаков ответил:

    3 – если память не отшибает то вот прогнать в цикле a1[i,j]:=a[n+1-j,n+1-i];

    Это же вроде просто находит второстепенную диагональ, а вот как сделатьчтобы они заменялись?

  14. 3
    Саня Кудр ответил:

    А зачем температура за июль и август, если надо найти только за июнь? Кроме того, у тебя в результате программка выведет максимальную, а не минимальную температуру. Лучше:

    ********
    min:=m[1];
    for i:=1 to 30 do
    if m[i]<min then min:=m[i];
    writeln(min);
    ********

  15. 2
    Сергей Безрукавников ответил:

    2 – Простой 2-мерный массив, Строки ученики, столбцы предметы, заполнить оценками и построчно смотреть на отсутствие пятерок.

    3 – если память не отшибает то вот прогнать в цикле a1[i,j]:=a[n+1-j,n+1-i];

    Или у меня голова не варит, или автор удалил второе сообщение.

    Насчёт первой, для процесса отладки легче забить рандомно погоду чем 90 значений вводить вручную, и ещё получается что в 3 месяцах 90 дней, хотя июнь 30, июль 31, август 31. Ида минимальное значение сразу ставить первый элемент массива и сравнивать начиная со второго.
    В последнем readln пропущена ; (хотя гдето слышал, что перед end. точка с запятой не обязателен)да и вообще он не нужен)

  16. 1
    Дмитрий Москин ответил:

    >min:=m[1];
    >for I := 2 to 30 do
    это так, на заметку :) чтобы в будущем не было кода, типа max:=99999999999999; и min:=-99999999999999…

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.