Другие языки программирования и технологии

Помогите, пожалуйста решить 2 задачки, только они остались, а решить не выходит плз (Turbo PASCAL)

Составить программу, в которой подсчитывается сумма положительных чисел, в противном случае, вывести сообщение об отсутствии положительных чисел. (Ввод исходных данных организовать с помощью генератора случайных чисел) Из диапазона от 50 до 650 компьютер выбрал случайным образом число. Если выбранное число является трехзначным, то поменять местами среднюю и последнюю цифры. Выдать на печать число, выбранное ПК и новое, полученное после перестановки цифр. В противном случае, вычислить сумму цифр числа, вывести на печать выбранное ПК число и полученную сумму.
1 программа:
var S, K, N : Integer; C : String;
begin
S := 0;
K := 0;
repeat
Inc(K);
Write('Введите ', K, ' число : '); ReadLn(N);
if N > 0 then S := S + N;
Write('Ещё будете вводить числа? (Y/N) > '); ReadLn(C);
until Not(C[1] in ['y', 'Y']);
if S > 0 then WriteLn('Сумма положительных чисел = ', S) else WriteLn('Не введено ни одного положительного числа. ');
end.

2 программа:
var N : Word;
begin
Randomize; N := Random(600) + 50;
WriteLn('Компьютер сгенерировал число: ', N);
if N > 99 then WriteLn('Новое число : ', N div 100 + (N div 10) mod 10 + (N mod 10) * 100) else WriteLn('Сумма цифр числа : ', N div 10 + N mod 10);
end.
Юрий Курочкин
Юрий Курочкин
90 705
Лучший ответ
И с чем у тебя проблемы?
program zadacha1;
uses crt;
var
n,t,i,sum:integer;
k:boolean;
begin
k:=false;
write('vvedite kol-vo chisel:');readln(n);
for t:=1 to n do
begin
write('vvedite ',t,' chislo:');readln(i);
if i>0 then begin sum:=sum+i; k:=true;end;
end;
if not(k) then writeln('Polozhitelnix chisel net!') else writeln('summa polozhitelnix chisel =',sum );

writeln('Dlya vixoda nazmi ENTER');readln;
end.

program zadacha2;
uses crt;
var
n,i:integer;

begin
randomize;
i:=random(600)+50;
if i>99 then n:=(i div 100)*100+(i mod 10)*10+((i div 10) mod 10) else n:=(i div 10)+(i mod 10);
writeln(i,' ',n);

end.
Андрей Балдин
Андрей Балдин
2 540
Запускаешь цикл, в котором проверяешь каждое число, больше оно нуля или нет.
Если больше, то положительное. Count:=Count+1; После проверки - writeln(count), она выведет количество положительных чисел.

if count>0 then writeln(count)
else writeln ('Положительных чисел нет');
Игорь Архипов
Игорь Архипов
1 578
зачем темы дублируешь???
Мы это в колледже проходили) я бы подсказал, но пока там все что то решали в кс играл либо ходил курить ))