Проведем упрощения.
Оба выражения свелись к одному и тому же. Его функциональная схема дана во вложении.
Прикладываю исходник и скрин в приложении к ответу.
<u><em>Несколько замечаний:
</em></u><em />1. <em />Большое количество комментариев внесено в код исключительно в учебных целях. В реальную программу переносить не рекомендуется - признак нехорошего тона.
2. У вас допущены синтаксические ошибки в двух последних циклах, а точнее - в операторах If, в которых стоит три условия (объединённых and), но нет ключевого слова "then" и последующих инструкций. Исправил.
3. Так же, автор вашей программы построил на мой взгляд нелогичную структуру алгоритма. Переменные min, min2 и min3, как я догадался, должны хранить три минимальных значения массива.
А вот что происходит в вашей конструкции: первый цикл безошибочно находит наименьший элемент и записывает его в min, а последующие два цикла записывают в min2 и min3 первые попавшиеся(начиная с первого) элементы, если они больше min. Таким образом, нет никакой закономерности в том, что попадёт в эти переменные и сложно представить, для какой задачи потребовались бы такие случайности.
Одним из вариантов решения предлагаю изначально записывать в эти три переменные не значение первого элемента массива, а какое-то большое число, которое в массиве нам не встретится (например 100). Тогда цикл будет искать значения меньше 100 и перезаписывать им соответствующую переменную, пока не найдёт самое маленькое значение. В таком случае не очень стабильная переменная j нам так же не нужна, я её вычеркнул.
Вам отсылаю уже с учётом поправок, однако если вам требовалась <u><em>именно первоначальная версия</em></u> несмотря на её минусы, просто поправьте синтаксис в последних циклах (41 и 34 строчка на скрине) и пользуйтесь ей.
Program Summa;
var s,i,n:integer;
begin
write('Введите n:' );
readln(n);
s:=0;
for i:=1 to n do
if (i mod 2)<>0 then s:=s+i;
writeln;
writeln('Сумма нечётных чисел равна:',s);
readln; {для паузы}
end.
3. pascal
var s, a: integer;
g:longint;
begin
s:=0;
readln(g);
while g > 0 do
begin
a:=g mod 10;
g:=g div 10;
s:=s+a;
end;
writeln(s)
end.
Var
f,b,a,i:longint; // описание переменных
begin
write('Write b, a: ');
readln(b,a); // Присваивание b, a числа
f:=1; // Присваивание f=1
for i:=1 to b do // Нахождение b! (факториала)
f:=f*i;
writeln('x= ',f*(1/sqr(a)):0:2); // вывод результатов(выполнение форумулы)
readln
end.