Уисполнителя вычислитель две команды, которым присвоены номера:
1. умножь на 3
2. вычти с
первая из них увеличивает число на экране в 3 раза, вторая уменьшает его на 5. (с - неизвестное натуральное число, и > =5)
известно, что программа 21211 переводит число 8 в число 36.
определите значение b.
с решением
#include <conio.h>
#include <time.h>
using namespace std;
void main()
{
srand(time(NULL));
setlocale(0, "");
int arr[17];
int a, b, chet=0, nechet = 0;
cout << "Введите диапазон ." << endl << "Нижняя граница диапазона: "; cin >> a; cout << "Верхняя граница диапазона: "; cin >> b; cout << endl;
for (int i = 0; i < 17; ++i)
{
arr[i] = a + rand() % (b-a+1);
cout <<" "<<arr[i];
}
for (int i = 0; i < 17; ++i)
{
if (arr[i] % 2 == 0) chet++;
else nechet++;
} if (chet > nechet)
cout << " \n Четных больше";
else if (nechet>chet)
cout << "\n Нечетных больше";
else cout << "\n Одинаковое количество четных и нечетных";
_getch();
}
Var
A:longint;
n,p:integer;
B:byte;
Begin
Write('Введите натуральное число: ');
ReadLn(A);
n:=0;
p:=0;
While A > 0 do
Begin
B:=A mod 10;
if B = 0 then n:=n+1;
if B = 5 then p:=p+1;
A:=A div 10;
End;
WriteLn('Количество нулей в числе: ',n);
WriteLn('Количество пятёрок в числе: ',p);
End.
Вариант второй:
Var
A:string;
n,p,i:integer;
Begin
Write('Введите натуральное число: ');ReadLn(A);
n:=0;
p:=0;
For i:= 1 to Length(A) do
if A[i] = '0' then n:=n+1
else if A[i] = '5' then p:=p+1;
WriteLn('Количество нулей в числе: ',n);
WriteLn('Количество пятёрок в числе: ',p);
End.