Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
ТеслаЭнерджи
0 / 0 / 0
Регистрация: 23.04.2011
Сообщений: 2
1

Определить каждую цифру рандомного числа

27.04.2011, 10:56. Просмотров 1098. Ответов 2
Метки нет (Все метки)

вобщем, задача:
дано рандомно сгенерированное 4-х значное число. нужно методом подбора с клавиатуры это число набрать так, чтобы паскаль говорил о правильности ввода. ну, например число 1234, мы вводим 3241 и он говорит сколько элементов на своих местах, сколько не на своих, а сколько вообще неправильно.
и еще одно, в самом сгенерированном числе цифры не должны повторяться межде собой, т.е. числа 1122, например, быть не должно.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2011, 10:56
Ответы с готовыми решениями:

Найти каждую цифру из 5-значного числа
Число "chislo" вводиться из клавиатуры. Нашел 1,2 и 5 цифры, помогите...

Составить программу, позволяющую по последней цифре данного числа определить последнюю цифру куба этого числа
Задача:№ 79 Составить программу, позволяющую по последней цифре данного числа...

Определить максимальную и минимальную цифру числа
Дано натуральное число. • Определить его максимальную цифру. • Определить его...

Определить вторую (с начала) цифру числа
Дано натуральное число n (n>9). Определить его вторую (с начала) цифру. ...

Определить наибольшую цифру введенного натурального числа
Создать функцию пользователя, определяющую наибольшую цифру введенного...

2
Puporev
Модератор
55057 / 42325 / 29229
Регистрация: 18.05.2008
Сообщений: 100,020
27.04.2011, 11:40 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Примерно так, число попыток наверное нужно увеличить.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
uses crt;
procedure Prov(n,m:integer;p:byte;var f:boolean);
var ms,nm,np,i,j:byte;
    s1,s2:string[4];
begin
if m=n then
 begin
  f:=true;
  writeln('Вы отгадали, загадано число ',n);
 end
else
 begin
  f:=false;
  ms:=0;nm:=0;np:=0;
  str(n,s1);
  str(m,s2);
  for i:=1 to 4 do
  if s2[i]=s1[i] then inc(ms);
  for i:=1 to 4 do
  for j:=1 to 4 do
  if (s2[i]=s1[j])and(i<>j) then inc(nm);
  np:=4-ms-nm;
  writeln('На месте=',ms,'  не на месте=',nm,'  неправильно=',np);
 end;
end;
var a,b:integer;
    p:byte;
    f:boolean;
begin
clrscr;
randomize;
repeat
a:=random(9000)+1000;
until(a div 1000<>a div 100 mod 10)
and(a div 1000<>a div 10 mod 10)
and(a div 1000<>a mod 10)
and(a div 100 mod 10<>a div 10 mod 10)
and(a div 100 mod 10<>a mod 10)
and(a div 10 mod 10<>a mod 10);
writeln('Угадайте 4х-значное число за 4 попытки:');
p:=0;
repeat
 repeat
  readln(b);
 until(b>=1000)and(b<=9999);
 p:=p+1;
 Prov(a,b,p,f);
 if p=4 then writeln('Вы использовали все попытки, игра окончена');
until f or(p=4);
readln
end.
1
ТеслаЭнерджи
0 / 0 / 0
Регистрация: 23.04.2011
Сообщений: 2
27.04.2011, 18:00 3
вот спасибо, а то я совсем не знал что делать. скоро зачет, а я в паскале не шарю совсем.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.04.2011, 18:00

Определить самую старшую цифру числа (n≤1000)
помогите пожалуста!

Для натурального числа N определить первую и последнюю цифру.
Для натурального числа N определить первую и последнюю цифру. Выяснить какая...

Определить минимальную и максимальную цифру заданного натурального числа
Дано натуральное число. а) Определить его максимальную цифру. б) Определить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru