Форум программистов, компьютерный форум CyberForum.ru

с++ срубит ли дамка одну или оби пешки - C++

Восстановить пароль Регистрация
 
vol()diK
1 / 1 / 0
Регистрация: 12.01.2010
Сообщений: 8
13.01.2010, 15:57     с++ срубит ли дамка одну или оби пешки #1
...осталась белая дамка и 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
uses
 crt;
  type  Point = record
            x:word;
            y:word;
            end;
 var  d,s1,s2:Point;
begin
 Writeln('input DaMka position x[1..8]');
 Readln(d.x);
  Writeln('input damka position y[1..8]');
 Readln(d.y);
 Writeln('input WaWka1 position x[1..8]');
 Readln(s1.x);
  Writeln('input WaWka1 position y[1.8]');
 Readln(s1.y);
  Writeln('input WaWka2 position x[1..8]');
 Readln(s2.x);
  Writeln('input WaWka2 position y');
 Readln(s2.y);
  if  if (abs(s1.x-d.x)=abs(s1.y-d.y)) and((s1.x<>8) or(s1.y<>8) or(s1.x<>1) or(s1.y<>1))  then
  begin
  writeln('DaMka can eat WaWka1 ');
  d.x:=s1.x+1;
  d.y:=s1.y+1;
  if  if (abs(s2.x-d.x)=abs(s2.y-d.y)) and((s2.x<>8) or(s2.y<>8) or(s2.x<>1) or(s2.y<>1)) then
  writeln('and DaMka can eat WaWka2 ');
  end
  else if
    if (abs(s2.x-d.x)=abs(s2.y-d.y)) and((s2.x<>8) or(s2.y<>8) or(s2.x<>1) or(s2.y<>1)) then
  begin
  writeln('DaMka  can eat WaWka2 ');
  d.x:=s2.x+1;
  d.y:=s2.y+1;
  if (abs(s1.x-d.x)=abs(s1.y-d.y)) and((s1.x<>8) or(s1.y<>8) or(s1.x<>1) or(s1.y<>1)) then
  writeln('and DaMka  can eat WaWka1 ');
  end
  else
  Writeln('i can not eat WaWka1 and WaWka2');
  writeln('KoopDuHaTbI:');
  writeln('DaMKa: [',d.x,',',d.y,']');
  writeln('WaWka1: [',s1.x,',',s1.y,']');
  writeln('WaWka2: [',s2.x,',',s2.y,']');
  readln;
 
 end.
помогите пожалуйста!!!(((
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Spark3r
8 / 8 / 0
Регистрация: 12.01.2010
Сообщений: 32
13.01.2010, 16:10     с++ срубит ли дамка одну или оби пешки #2
Уже не надо)
Я розобрался)
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
13.01.2010, 16:13     с++ срубит ли дамка одну или оби пешки #3
vol()diK
1 / 1 / 0
Регистрация: 12.01.2010
Сообщений: 8
13.01.2010, 16:14  [ТС]     с++ срубит ли дамка одну или оби пешки #4
ага, а я нет!!!)))))))))

Добавлено через 1 минуту
так мне с паскаля в с++ надо!!!!
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
13.01.2010, 16:29     с++ срубит ли дамка одну или оби пешки #5
vol()diK, Тот код который ты предоставил ты хоть сам понимаешь? Сам ли ты его делал?
vol()diK
1 / 1 / 0
Регистрация: 12.01.2010
Сообщений: 8
13.01.2010, 16:34  [ТС]     с++ срубит ли дамка одну или оби пешки #6
в том то и дело, что я в паскале я пока не шарю...(((
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
13.01.2010, 16:48     с++ срубит ли дамка одну или оби пешки #7
Цитата Сообщение от vol()diK Посмотреть сообщение
в том то и дело, что я в паскале я пока не шарю...(((
за логику не ручаюсь просто переделал код:
C++
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
#include <iostream>
#include <stdlib.h>
using namespace std;
 
struct point{
    int x, y;
}d, p1, p2;
 
 
int main()
{
    cout << "input DaMka position x[1..8]" << endl;
    cin >> d.x;
    cout << "input damka position y[1..8]" <<endl;
    cin >> d.y;
    cout << "input WaWka1 position x[1..8]" <<endl;
    cin >> p1.x;
    cout << "input WaWka1 position y[1.8]" <<endl;
    cin >> p1.y;
    cout << "input WaWka2 position x[1..8]"<<endl;
    cin >> p2.x;
    cout << "input WaWka2 position y[1.8]" <<endl;
    cin >> p2.y;
    if (abs(p1.x - d.x)==abs(p1.y - d.y) && (p1.x!=8 || p1.y!=8 || p1.x!=1 || p1.y!=1)){
     cout << "DaMka can eat Peshka1 ";
     d.x = p1.x+1;
     d.y = p1.y+1; 
     if (abs(p2.x - d.x)==abs(p2.y - d.y) && (p2.x!=8 || p2.y!=8 || p2.x!=1 || p2.y!=1)) 
      cout << "and DaMKa can eat Peshka2 ";
 }
    else if(abs(p2.x - d.x)==abs(p2.y - d.y) && (p2.x!=8 || p2.y!=8 || p2.x!=1 || p2.y!=1)) 
    {
        cout << "DaMKa can eat Peshka2 ";
        d.x = p2.x+1;
        d.y = p2.y+1;
        if (abs(p1.x - d.x)==abs(p1.y - d.y) && (p1.x!=8 || p1.y!=8 || p1.x!=1 || p1.y!=1))
        cout << "and DaMka  can eat WaWka1 ";
    }
    else
    {
            cout << "i can not eat WaWka1 and WaWka2\n";
            cout << "KoopDuHaTbI:\n";
            cout << "DaMKa: ["<<d.x<< "," << d.y<<"]\n";
            cout << "Peshka1: ["<<p1.x<<","<<p1.y<<"]\n";
            cout << "Peshka2: ["<<p2.x<<","<<p2.y<<"]\n";
 
    }
    
 
    return 0;
}
vol()diK
1 / 1 / 0
Регистрация: 12.01.2010
Сообщений: 8
13.01.2010, 16:59  [ТС]     с++ срубит ли дамка одну или оби пешки #8
спасибки... ща будем розбераться!!!
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
13.01.2010, 17:18     с++ срубит ли дамка одну или оби пешки #9
Либо изначальная программа неправильная что скорее всего.. либо я ошибся, но логика не правильная. Я ввел такие координаты по которым дамка должна бить обе пешки а он выводит не может такого быть.
vol()diK
1 / 1 / 0
Регистрация: 12.01.2010
Сообщений: 8
13.01.2010, 17:28  [ТС]     с++ срубит ли дамка одну или оби пешки #10
чувак...ну не знаю, я проверил на обе...то рубит обе! ...о_О
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
13.01.2010, 17:32     с++ срубит ли дамка одну или оби пешки #11
Цитата Сообщение от vol()diK Посмотреть сообщение
чувак...ну не знаю, я проверил на обе...то рубит обе! ...о_О
мда? а откуда считаются координаты х и у?
1 2 3 4 5 6 7 8
2
3
4
5
6
7
8
так?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.01.2010, 18:24     с++ срубит ли дамка одну или оби пешки
Еще ссылки по теме:

Используя одну операцию деления нацело и одну операция взятия остатка от деления найти цифру. соответствующую разряду ты C++
Сохранить одну или несколько картинок в PDF C++
C++ Шашки. Проверить, может ли походить дамка

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

Или воспользуйтесь поиском по форуму:
vol()diK
1 / 1 / 0
Регистрация: 12.01.2010
Сообщений: 8
13.01.2010, 18:24  [ТС]     с++ срубит ли дамка одну или оби пешки #12
1 2 3 4 5 6 7 8
1
2
3
4
5
6
7
8
или ты про то, что всё цыфрамы обозначаеться??? мне и так сойдёт... (я так думаю)

Добавлено через 21 минуту
C++
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
#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{   int dx,dy,p1x,p1y,p2x,p2y;
    printf( "input DaMka position x[1..8]\n") ;
    scanf("%d", &dx);
    printf( "input damka position y[1..8]\n");  
    scanf("%d", &dy);
    printf( "input WaWka1 position x[1..8]\n");
    scanf("%d",&p1x);
    printf( "input WaWka1 position y[1.8]\n");  
    scanf("%d",&p1y);
    printf( "input WaWka2 position x[1..8]\n"); 
    scanf("%d",&p2x);
    printf( "input WaWka2 position y[1.8]\n");
    scanf("%d",&p2y);
    if (fabs(p1x - dx)==fabs(p1y - dy) && (p1x!=8 || p1y!=8 || p1x!=1 || p1y!=1)){
     printf( "DaMka can eat Peshka1 ");
     dx = p1x+1;
     dy = p1y+1; 
     if (fabs(p2x - dx)==fabs(p2y - dy) && (p2x!=8 || p2y!=8 || p2x!=1 || p2y!=1)) 
      printf(  "and DaMKa can eat Peshka2 ");
 }
    else if(fabs(p2x - dx)==fabs(p2y - dy) && (p2x!=8 || p2y!=8 || p2x!=1 || p2y!=1)) 
    {
        printf( "DaMKa can eat Peshka2 ");
        dx = p2x+1;
        dy = p2y+1;
        if (fabs(p1x - dx)==fabs(p1y - dy) && (p1x!=8 || p1y!=8 || p1x!=1 || p1y!=1))
        printf(  "and DaMka  can eat WaWka1 ");
    }
    else
    {
            printf( "i can not eat WaWka1 and WaWka2\n");
            printf( "KoopDuHaTbI:\n");
            printf(  "DaMKa: [%d, %d]\n",dx,dy);
            printf(  "Peshka1: [%d, %d]\n",p1x,p1y);
            printf(  "Peshka2: [%d, %d]\n",p2x,p2y);
 
    }
    
     getch();
    return 0;
 
}
Yandex
Объявления
13.01.2010, 18:24     с++ срубит ли дамка одну или оби пешки
Ответ Создать тему
Опции темы

Текущее время: 08:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru