Задача 1.
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
printf("Объём=%d\n",n*n*n);
printf("Площадь=%d",n*n);
getchar();
}
Задача 2.
#include <stdio.h>
int main() {
float R1, R2, R3;
scanf("%f", &R1);
scanf("%f", &R2);
scanf("%f", &R3);
printf("R_общ.=%f",(R1*R2*R3)/(R1*R2+R2*R3+R1*R3));
}
Задача 3.
#include <stdio.h>
#include <math.h>
int main() {
float h;
scanf("%f", &h);
printf("р=%f",sqrtf(2*h/9.81));
getchar();
}
На решение этих задач я потратил примерно 2 часа. Будьте добры и поставить мне за усилия сердечко и 5 звёзд! ;-)
Блок-схема во вложении, код:
#include <iostream>
#include <string>
using namespace std;
signed main() {
string n;
bool Flag = true;
cin >> n;
for (auto& i : n)
if (!(i >= '0' && i <= '9')) {
Flag = false;
}
if (Flag == false)
cout << "Invalid input";
else{
cout << (1 + stoi(n)) * stoi(n) / 2;
}
Метод:
Создаем логическую переменную Flag и задаем ей значение True
Считываем переменную n(по дефолту ставим ей тип "string"), создаем цикл с параметром, в котором проверяем символы строки n, если символ является не цифрой, то в Flag передаем False. Затем проверяем, чему равна наша переменная Flag, если false (то есть какие-то символы кроме цифр есть), то выводим: Invalid input, в ином случае выводим значение выражения для подсчета суммы чисел от 1 до введенного N.
var a,b: array of integer;
i,n,lo,ss: integer;
begin
lo:=0;
ss:=1;
write('Введите количество элементов массива');
readln(n);
setlength(a,n);
setlength(b,n);
for i:=0 to n-1 do
begin
write('Ввод данных для a[',i+1,']=');
readln(a[i]);
if a[i]<0 then inc(lo) else ss:=ss*a[i];
end;
writeln('Данные массива A:');
for i:=0 to n-1 do writeln('a[',i+1,'] = ',a[i]);
writeln;
writeln('Данные массива B:');
for i:=0 to n-1 do
begin
if odd(i+1) then b[i]:=lo else b[i]:=ss;
writeln('b[',i+1,'] = ',b[i]);
end;
end.