(
в общем, проблема простая, но решение сложное
не хватает времени чтобы решить на си, имеет следующий вид..
зарплата продавцов компании формируется из комиссионных вознаграждений. продавцы получают 12к рублей в месяц + 8% от их валовых продаж за этот месяц. продавцы уплачивают с заработной платы подоходный налог по ставку 13% если сумма зарплаты не превышает 100к рублей, и по ставке 24% в остальных случаях. например, продавец реализующий за месяц препаратов на 300к рублей, получает 12к рублей + 8% от 300к рублей, или в сумме 36к рублей до уплаты налога и 31320 рублей после налоговых отчислений. разработайте программу для ввода валовых продаж для трёх продавцов за последний месяц, расчёта и отображения на экране их заработков. в программе должны быть реализованы, как минимум, следующие функции:
inputdata для организации ввода исходных данных по одному продавцу;
calculatorincome для вычисления размера заработка до уплаты налогов в зависимости от объема его продаж;
calculatetaxes для определения налоговых выплат;
calculatesalary для вычисления *чистого* размера заработка продавца в зависимости от объема его продаж и с учётом уплаченных налогов;
printtable для печати зарплатной ведомости.
зарплатная ведомость должна содержать сведения об объеме продаж, заработной плате до и после удержания налогов по каждому продавцу, а также строку с итогами.
таблица должна иметь следующий вид:
program raf105;
const
n = 5;
var
a: array[1..n,1..n] of integer;
i,j,num,n1,n2: integer;
begin
writeln('Вводите числа столбцов матрицы по очереди');
for i:=1 to n do
begin
writeln('Столбец ',i);
for j:=1 to n do
readln(a[i,j]);
end;
for i:=1 to n do
begin
n1:= 0;
n2:= 0;
for j:=1 to n do
begin
if (a[i,j] mod 2 <> 0) and (a[i,j] <> 0)
then n1:= n1+1;
end;
for j:=1 to n do
begin
if (a[i,j] mod 2 = 0) and (a[i,j] <> 0)
then n2:= n2+1;
end;
if n1 > n2
then num:= i;
end;
writeln('Вывод: ',num);
end.
PascalABC 3.4.2