ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Помогите плиз с задачей
  #1  
Старый 25.01.2008, 11:40
Аватар для netzzz
netzzz
Познающий
Регистрация: 11.08.2005
Сообщений: 38
Провел на форуме:
247533

Репутация: 4
По умолчанию Помогите плиз с задачей

Нужно в течение часа решить задачу, кто поможет с меня плюсенгов...

Ввести строку, состоящую из одного слова, проверить будет ли оно читаться одинаково справа на лево и слева на право (т.е. является ли оно палиндромом). Исходную строку и ответ вывести на экран.
 
Ответить с цитированием

  #2  
Старый 25.01.2008, 11:46
Аватар для spider-intruder
spider-intruder
Постоянный
Регистрация: 10.12.2005
Сообщений: 939
Провел на форуме:
3886281

Репутация: 929


Отправить сообщение для spider-intruder с помощью ICQ
По умолчанию

Язык какой?
 
Ответить с цитированием

  #3  
Старый 25.01.2008, 12:11
Аватар для netzzz
netzzz
Познающий
Регистрация: 11.08.2005
Сообщений: 38
Провел на форуме:
247533

Репутация: 4
По умолчанию

ой сорр асемблер
 
Ответить с цитированием

  #4  
Старый 25.01.2008, 12:14
Аватар для iddqd
iddqd
Banned
Регистрация: 19.12.2007
Сообщений: 924
Провел на форуме:
4192567

Репутация: 2145


По умолчанию

Я помню у нас в универе на си такая задачка была- несложная...
А на асме страниц 5 кода будет...)))
 
Ответить с цитированием

  #5  
Старый 25.01.2008, 12:20
Аватар для gibson
gibson
Moderator - Level 7
Регистрация: 24.02.2006
Сообщений: 447
Провел на форуме:
2872049

Репутация: 705
Отправить сообщение для gibson с помощью ICQ
По умолчанию

пробуй
Код:
#include <conio.h>
#include <stdio.h>
void main()
{char s1[100],s2[100]="";
unsigned int ks1 = int(s1),ks2 = int(s2);
unsigned int l,r;
clrscr();
gets(s1);
asm{
  mov dx,0
  mov bx, ks1
  dec bx
  }
  l0:
asm{
  inc bx
  mov cx, bx
  mov ah, [bx]
  cmp ah,0
  je fin
  mov al,[bx+1]
  cmp al,0
  je fin
  }
  l1:
asm{
   mov al, [bx]
   cmp al, 32
   je l2a
   cmp al,0
   je l2a
   inc bx
   jmp l1
  }
  l2a:
asm{
   push bx
   push cx
   dec bx
   mov r,bx
   mov l,cx
   push ax
  }
  l2a1:
asm{
   mov bx,r
   mov cx,l
   mov ah,[bx]
   mov bx,cx
   mov al,[bx]
   cmp bx,cx
   jna l2a2
   cmp ah,al
   jne l2a2
   dec r
   inc l
   jmp l2a1
  }
  l2a2:
asm{
   cmp ah,al
   jne l4
   pop ax
   cmp al,0
   je fin
   pop cx
   pop bx
   jmp l0
  }
  l4:
asm{
  pop ax
  pop bx
  pop cx
  inc cx
  }
  l3:
asm{
   push bx
   mov bx, ks2
   add bx,dx
   mov [bx],ah
   inc dx
   pop bx
   inc bx
   mov ah,[bx]
   cmp bx,cx
  jne l3
  dec bx
  cmp ah,0
  jne l0
  }
  fin:
printf("%s",s2);
}
else
http://phorum.key.ru/viewtopic.php?f=34&t=34754
http://forum.woweb.ru/topic29962.html
http://devoid.com.ua/functions-about/c-functions/strrev.html
http://sourcecore.net/forums/viewtopic.php?p=4550&sid=cb5fdffbe787b000f206dd4b8 a1af74c
http://phorum.key.ru/viewtopic.php?t=32218
http://kitnet.s42.asu.ru/www/olimp/asm/z3/z3.htm
money
http://foxweb.net.ru/files/?arc=1

Последний раз редактировалось gibson; 25.01.2008 в 12:30..
 
Ответить с цитированием

  #6  
Старый 25.01.2008, 12:21
Аватар для spider-intruder
spider-intruder
Постоянный
Регистрация: 10.12.2005
Сообщений: 939
Провел на форуме:
3886281

Репутация: 929


Отправить сообщение для spider-intruder с помощью ICQ
По умолчанию

На си если то вот как то так :-)
(криво но пашет- строка проверяется не до середины а в 2 стороны поностью - не оптимально! Зато быстро :-))

#include "stdio.h"
#include "string.h"

void main(int argc, char* argv[])
{
if(argc==1)
{
printf("USE: polindrom.exe string.\r\n");

}
else
{
char * str = argv[1];
int i;
int Sz=(strlen(str));

for(i=0;i<=Sz;i++)
{
if(str[i]!=str[(Sz-1)-i])
{
printf("Its not a polindrom :-(");
return;
}
}
printf("Its a polindrom :-)");

}
}

Последний раз редактировалось spider-intruder; 25.01.2008 в 12:29..
 
Ответить с цитированием

  #7  
Старый 25.01.2008, 12:32
Аватар для netzzz
netzzz
Познающий
Регистрация: 11.08.2005
Сообщений: 38
Провел на форуме:
247533

Репутация: 4
По умолчанию

все всем спасибо сам решил .. приду на работу почитаю всем плюсенгов наставлю )))
 
Ответить с цитированием

  #8  
Старый 25.01.2008, 12:35
Аватар для netzzz
netzzz
Познающий
Регистрация: 11.08.2005
Сообщений: 38
Провел на форуме:
247533

Репутация: 4
По умолчанию

Цитата:
.Model small
.stack 100h
include macr.inc
.data
f db "Введи слово",0ah,0dh,"$"
fn db "Не полиномы",0ah,0dh,"$"
fp db "Полиномы",0ah,0dh,"$"
rett db 0ah,0dh,"$"
s db " $"
p db 0
len dw 0
.code
jmp start

ASSUME ds:@data,es:@data
start:
init_dses

out_str f
in_str s
mov len,ax

mov di, offset s
mov si,di
add si,len
sub si,3
mov cx,len
sub cx,3
go: mov al,[si]
cmp [di],al
jne nepolinom
inc di
dec si
loop go

out_str fp
jmp exit
nepolinom:
out_str fn

exit:

int 27h
end start
macr.inc
Цитата:
init_ds macro
mov ax,@data
mov ds,ax
xor ax,ax
endm

init_dses macro
mov ax,@data
mov ds,ax
mov es,ax
xor ax,ax
endm



out_str macro st
push ax
mov ah,09h
mov dx,offset st
int 21h
pop ax
endm

clr macro rg
xor rg,rg
endm

in_str macro st
mov ah, 3fh
mov bx,0h
lea dx,st
mov cx,99
int 21h
endm

find_c macro len, st

; mov al,'&char'
cld
mov di,offset st
mov cx,len
repne scas st
endm

in_char macro char
push ax
mov ah,1h
int 21h
mov char,al
pop ax
endm

out_char macro char
push ax
mov ah,2h
int 21h
pop ax
endm
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите плиз... биос spy-profi Болталка 5 27.12.2007 00:13
Крек, помогите плиз spy-profi Болталка 0 26.12.2007 09:34



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ