Надо составить-блок схему
Значения переменных А, В, С поменять местами так, чтобы оказалось
А>=В>=С. Переменные А, В, С заданы.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
double a, b, c, max=0, min=0, sr=0;
Console.Write("Enter a: ");
a = Convert.ToDouble(Console.ReadLine());
Console.Write("Enter b: ");
b = Convert.ToDouble(Console.ReadLine());
Console.Write("Enter c: ");
c = Convert.ToDouble(Console.ReadLine());
if ((a > b) && (a > c) && (b > c))
{
max = a;
min = c;
sr = b;
}
if ((a > b) && (a > c) && (b < c))
{
max = a;
min = b;
sr = c;
}
if ((a < b) && (a < c) && (b > c))
{
max = b;
min = a;
sr = c;
}
if ((a < b) && (a > c) && (b > c))
{
max = b;
min = c;
sr = a;
}
if ((a < b) && (a < c) && (b < c))
{
max = c;
min = a;
sr = b;
}
if ((a > b) && (a < c) && (b < c))
{
max = c;
min = b;
sr = a;
}
a = max;
b = sr;
c = min;
}
}
}
Поэтому два варианта программы: один вычисляет сумму накоплением, второй сразу определяет результат по формуле. Хороший пример того, что программист должен знать математику.
var
n, i, s: integer;
begin
Write('Введите натуральное число: ');
Readln(n);
if (n mod 2) = 0 then
begin
s := 0;
for i := 1 to n do s := s + i;
Writeln('Сумма чисел от 1 до ', n, ' равна ', s)
end
else Writeln('Введено нечетное число')
end.
Тестовое решение:
Введите натуральное число: 8
Сумма чисел от 1 до 8 равна 36
var
n, s: integer;
begin
Write('Введите натуральное число: ');
Readln(n);
if (n mod 2) = 0 then
Writeln('Сумма чисел от 1 до ', n, ' равна ', ((1 + n) * n) div 2)
else Writeln('Введено нечетное число')
end.
Тестовое решение:
Введите натуральное число: 8
Сумма чисел от 1 до 8 равна 36