В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История

Данная программа производит реверс цифр целого числа, введенного с клавиатуры пользователем.
Задача заключается в том, чтобы, например, число 12345 переписать как 54321.
Текст программы:

#include "stdafx.h"
#include
#include

int _tmain(int argc, _TCHAR* argv[])
{
long int x, r;

printf("\n Enter an integer: ");
scanf_s("%ld", &x);

printf("\n Reverse-digit number %ld:\n\n\t", x);

do {
r = x % 10;
printf(" %ld", r);
x = x / 10;
} while ( x != 0);

printf("\n\n Press any key: ");
_getch();

return 0;
}

В программе применена арифметическая операция деления по модулю, которая имеет символ процента, т. е. «%». Любой остаток, получающийся в результате деления целых чисел, будет отброшен. В шкале старшинства оператор деления по модулю имеет приоритет, равный приоритету операторов умножения и деления. Переменные, используемые в программе, объявлены как длинные числа, поэтому применен тип long int .
Задание для самостоятельной работы:
1. Наберите и запустите приведенный выше пример в среде Visual Studio Express.
2. Модифицируйте программу таким образом, чтобы она выполняла подсчет числа итераций заданного цикла.
3. Определите максимальное число вида 123...987..., для которого еще можно применить тип long int.

Показать ответ
Ответ:
Школа221111
Школа221111
26.09.2020 04:14

1)
Ввод чисел в массив:
program vvod_mass;
var
a: array[1..12] of integer;
i: integer;
begin
for i:=1 to 12 do
begin
write('a[', i, ']='); readln(a[i]);
end;
end.
2)
program otric;
var
a: array[1..10] of integer;
i,n: integer;
begin
randomize;
for i:=1 to 10 do
begin
a[i]:=-10+random(21);
writeln(a[i]);
end;
for i:=1 to 10 do if a[i]<0 then inc(n);
write('Кол-во отрицательных чисел массива: ', n);
end.
3)
program chetniy;
var
a: array[1..8] of integer;
i,n: integer;
begin
randomize;
for i:=1 to 8 do
begin
a[i]:=-10+random(21);
writeln(a[i]);
end;
for i:=1 to 8 do if a[i] mod 2 = 0 then inc(n);
write('Кол-во отрицательных чисел массива: ', n);
end.

0,0(0 оценок)
Ответ:
Lesa222
Lesa222
26.05.2022 20:45

1)
program s_parallelogramm;
var
a,h,s: real;
begin
write('Основание = '); readln(a);
write('Высота = '); read(h);
if ((a=0) or (a<0)) or ((h=0) or (h<0)) then writeln('Ошибка! Значения основания и высоты должно быть натуральными числами')
else
begin
s:=a*h;
writeln('Площадь (S) параллелограмма = ', s);
end;
end.

2)
program sp_kvadrata;
var
a,p,s: real;
begin
write('Сторона квадрата = '); readln(a);
p:=4*a;
s:=sqr(a);
writeln('Периметр (P) квадарата = ', p);
writeln('Площадь (S) квадарата = ', s);
end.

3)
program e_kinet;
var
m,v,e: real;
begin
write('Масса тела (m, кг) = '); readln(m);
write('Скорость тела (v, км/ч) = '); readln(v);
e:=m*sqr(v)/2;
writeln('Кинетическая энергия (Ек, Дж) = ', e);
end.

1)
program vivod_chisel;
var
i, a: integer;
begin
a:=11;
for i:=1 to 45 do
begin
write(a:3);
a:=a+2;
end;
end.

2)
program sym_trex_chisel_krat5;
var
mas: array[1..900] of integer;
i,a,sym: integer;
begin
a:=100;
sym:=0;
for i:=1 to 900 do
begin
mas[i]:=a;
if mas[i] mod 5 = 0 then sym:=sym+mas[i];
a:=a+1;
end;
writeln('Сумма трехзначных чисел, кратных 5 = ', sym);
end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота