#include <iostream>
using namespace std;
int main()
{
int a, b, c;
int amount = 0;
cin >> a >> b >> c;
if (a > 0)
{
amount += a;
}
if (b > 0)
{
amount += b;
}
if (c > 0)
{
amount += c;
}
cout << amount;
}
Объяснение:
#include <iostream> // Библиотека ввода - вывода
using namespace std; // Пространство имен
int main()
{
int a, b, c; // Создание целочисленных переменных a, b, c
int amount = 0; // Создание целочисленной переменной amount, которая будет хранить сумму положительных чисел. Значение переменной = 0
cin >> a >> b >> c; // Ввод с клавиатуры значений переменных a, b, c
if (a > 0) // Если значение переменной a > 0
{
amount += a; // К значению переменной amount прибавляем значение переменной a
}
if (b > 0) // Если значение переменной b > 0
{
amount += b; // К значению переменной amount прибавляем значение переменной b
}
if (c > 0) // Если значение переменной b > 0
{
amount += c; // К значению переменной amount прибавляем значение переменной c
}
cout << amount; // Вывод значения переменной amount
}
1 - Количество нулевых элементов
2 - Сумма всех элементов с четными номерами
3 - Номер(индекс) минимального элемента
4 - Количество элементов, кратных 5
5 - Значение наибольшего элемента массива
6 - Произведение ненулевых элементов
Пояснения:
1. Видим, что у нас тут член массива сравнивается с нулем, и если наше условие выполняется, то мы к какой-то переменной прибавляем единичку. На что это похоже? Правильно! На поиск количества нулей в массиве.
2. Тут видим, что проверяется i на четность, а i это у нас счетчик и индекс элемента массива. Если счетчик четный, то мы к сумме прибавляем элемент. Что это? Правильно! Сумма всех элементов с четными номерами.
3. В этом куске кода мы видим, что цикл начинается с двух. Зачем же это надо? А всё просто, n = 1, a[n] = a[1], получается, что мы берем первый член массива за минимум и проверяем, есть ли элемент который меньше его, а это значит, что мы ищем минимум, но важно увидеть, что мы ищем не само значение, а индекс минимального элемента.
4. Тут всё просто, проверяем число на кратность 5, если наше условие кратно пяти, то к переменной k прибавляется единица. Ну и что же это у нас? Да-да, это количество всех элементов массива, значения которых кратны 5.
5. Здесь похожа ситуация с третьим куском кода, но теперь мы ищем максимум, а не минимум и ищем не индекс, а само значение. Первый элемент массива берем за максимум, далее проверяем нет ли элементов больше, чем этот, если какой-то элемент больше максимума, то мы присваиваем максимуму значение этого элемента.
6. Здесь можем наблюдать вот такую штуку "<>", в Паскале она означает "не равно", то есть, мы проверяем не равен ли элемент массива нулю, если не равен, то умножаем этот элемент на наше произведение.
Если остались вопросы - добро в комментарии.
Поделитесь своими знаниями, ответьте на вопрос:
Написать программы по программированию (pascal abc обязательно решать с использованием процедур. 1. написать программу, которая циклически сдвигает массив вправо или влево на указанное число позиций. сдвиг должен быть кольцевым. 2. написать программу перевода числа x из в . запрос числа х, основания n и вывод результата в основной программе, а перевод в процедуре.
Const
n=10;
type
ty=array[1..n] of integer;
var
ar:ty;
i,k:integer;
procedure push(var ar:ty);
var
i,c:integer;
begin
c:=ar[n];
for i:=n downto 2 do
ar[i]:=ar[i-1];
ar[1]:=c;
end;
begin
randomize;
writeln('Enter K:');
readln(k);
writeln('First array:');
for i:=1 to n do
begin;
ar[i]:=random(10);
write(ar[i]:4);
end;
for i:=1 to k do
push(ar);
writeln;
writeln('Final array:');
for i:=1 to n do
write(ar[i]:4);
end.
2)var
a,i,b,r,n:integer;
s,se:string;
procedure preob(var a,b,n:integer; var se:string);
begin
repeat
b:=a mod n;
a:=a div n;
str(b,se);
s+=se;
until (a<=n-1);
end;
begin
readln(a);
readln(n);
preob(a,b,n,se);
str(a,se);
s+=se;
for i:=1 to length(s) div 2 do
begin;
se:=s[i];
s[i]:=s[length(s)-i+1];
s[length(s)-i+1]:=se[1];
end;
val(s,r,a);
write(r);
end.