Garbage value


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Garbage value
# 1  
Old 09-30-2011
Garbage value

I write a program to find a palindromic region in given sequences. but it dosen't seems to be run well. please give me your suggestions

INPUT: AGCTAGCTCGAAGGTAG
code is
here
Code:
#!/usr/bin/perl 
#Palindromic sequence  
 
 
print "enter the sequence:\n"; 
$rna = <STDIN>; 
 
chomp $rna;       
 
#@rna =split ('',$rna); 
 
for($i=0;$i<=length($rna)-5;$i++){ 

  $s=substr($rna,$i,5); 
  $s2= reverse($s); 

  $s2 =~ tr/ACGTacgt/TGCAtgca/; 
  #print "$s2\n"; 
  if($rna =~ /$s2/){ 
    print "palindrome found: $s\n"; 
    exit; 
  }
}





SmilieSmilie

Last edited by Scott; 09-30-2011 at 03:43 AM.. Reason: Code tags, please...
# 2  
Old 09-30-2011
I'd test it character by character instead of testing long strings. I'm not too fluent in perl, but hopefully the logic on this should be followable:

Code:
$ cat palindrome.awk
BEGIN { FS=""; ORS=""; }

{
	for(N=1; N<=NF; N++)
	for(M=N+1; M<=NF; M++)
	{
	# If it does not begin and end on the same char, not a palindrome
		if($M != $N) continue;

		A=N ; B=M; P=1;

		# Test towards the middle until A and B cross
		while(P && (B > A))
			if($(B--) != $(A++) ) P=0;

		if(!P) continue;	# Not a palindrome

		printf("Palindrome, %d-%d: ", N, M);
		for(A=N; A<=M; A++) print $A;
		printf("\n");
	}
}
$ echo "AGCTAGCTCGAAGGTAG" | awk -f palindrome.awk
Palindrome, 5-11: AGCTCGA
Palindrome, 6-10: GCTCG
Palindrome, 7-9: CTC
Palindrome, 10-13: GAAG
Palindrome, 11-12: AA
Palindrome, 13-14: GG
$


Last edited by Corona688; 09-30-2011 at 01:22 AM..
This User Gave Thanks to Corona688 For This Post:
# 3  
Old 09-30-2011
thanks for your help but I have to do this problem solely by using perl script. I am new learner in perl so please help me to identify the problem in code written by me.


Quote:
Originally Posted by Corona688
I'd test it character by character instead of testing long strings. I'm not too fluent in perl, but hopefully the logic on this should be followable:

Code:
$ cat palindrome.awk
BEGIN { FS=""; ORS=""; }

{
    for(N=1; N<=NF; N++)
    for(M=N+1; M<=NF; M++)
    {
    # If it does not begin and end on the same char, not a palindrome
        if($M != $N) continue;

        A=N ; B=M; P=1;

        # Test towards the middle until A and B cross
        while(P && (B > A))
            if($(B--) != $(A++) ) P=0;

        if(!P) continue;    # Not a palindrome

        printf("Palindrome, %d-%d: ", N, M);
        for(A=N; A<=M; A++) print $A;
        printf("\n");
    }
}
$ echo "AGCTAGCTCGAAGGTAG" | awk -f palindrome.awk
Palindrome, 5-11: AGCTCGA
Palindrome, 6-10: GCTCG
Palindrome, 7-9: CTC
Palindrome, 10-13: GAAG
Palindrome, 11-12: AA
Palindrome, 13-14: GG
$

# 4  
Old 09-30-2011
I can't tell what you're trying to do. Why do you have fixed strings like ACGTacgt in there?

---------- Post updated at 11:00 PM ---------- Previous update was at 10:53 PM ----------

On closer examination, I think I see part of the problem. reverse() doesn't reverse a string, it reverses a list:

Code:
# prints abcdefgh
print "abcd", "efgh", "\n";
# prints efghabcd
print reverse("abcd", "efgh"), "\n";

So your 'reversed' string is actually identical..

You appeared to have the right idea earlier with split(). It outputs a list which reverse() can use, which also outputs a list, which you can cram into join() to make it a string again.

Code:
$r=join('', reverse(split('', $s)));
if($r == $s) { ... } # Same backwards and forwards is a palindrome

Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Some % of Garbage Collection

I need to write a python script that will look at the local gc logs. 6 sys=0.00, real=0.06 secs] 2019-06-05T07:43:12.029-0500: 1072696.494: 2791209K->1995953K(2796544K)] 2803355K->1995953K(4164608K), , 3.0299555 secs] 2019-06-05T07:43:17.149-0500: 1072701.614: 3334321K->2008193K(4167680K),... (1 Reply)
Discussion started by: xgringo
1 Replies

2. Programming

Boehm garbage collector for C

is anybody out there experienced with the boehm gc? this is a very simple function: int fn1(){ int *p = (int *) GC_MALLOC(sizeof(int *)); return 0; }after leaving fn1() gc should free p. *** now another example: int* fn2(){ int* p= (int *) GC_MALLOC(sizeof(int... (1 Reply)
Discussion started by: dodona
1 Replies

3. UNIX for Dummies Questions & Answers

Terminal telnet echos garbage

i am trying to make powerterm not echo back this charactor. ≥ When I press control-C I get it that telnet charactor/garbage echos back. how to turn off? where? what config? is there something in powerterm to switch on/off? I do not see it. Redhats offical statement is: "I... (10 Replies)
Discussion started by: olyanderson
10 Replies

4. Programming

strcat outputs garbage

Anyone have any ideas why when using strcat function I would get some garbage at the beginning of the output string? what I'm doing is something like the following example. Code: char temp; char tempHolder; for(int i=0;i<something;i++){ sprintf(temp,"%u ", someVariable);... (2 Replies)
Discussion started by: airon23bball
2 Replies

5. Filesystems, Disks and Memory

garbage collection not reflected in the nmon

i have my application running on AIX box (configuration given below) My application does garbage collection pretty well, as such the memory free shows 500 MB - 700 MB freed up in the log statements printed in the application, but the nmon shows the physical space going upwards and does not reflect... (1 Reply)
Discussion started by: mahesh_sivan
1 Replies

6. Shell Programming and Scripting

Remove Garbage Output

Hello Friends, In a script i m using different temporary file and i remove them in the end. During script execution i have some garbage output which is not required. For example: Garbage Output ++ rm temp_out temp_a temp_b temp_c ++ rm Filter1 Filter2 Script : Even i am redirecting rm... (7 Replies)
Discussion started by: Danish Shakil
7 Replies

7. Shell Programming and Scripting

Removing Garbage output

I am using following code to read myfile.ddl line by line. But the thing is it is printing lot of garbage which are the names of the files and directories in which myfile.ddl is present. Kindly refine the code so that only myfile.ddl contents are only read LOGFILE="logfile.txt"... (4 Replies)
Discussion started by: skyineyes
4 Replies

8. Shell Programming and Scripting

Script to Remove Garbage Character

Hello, Whenever I transfer files between machines, I find a garbage character (^M) being appended to the end of every line of the file. Can you suggest a script wherein I can eliminate the garbage character. I tried sed 's/^M//g' < filename > filename1 ...but it doesn't work. Also, this... (4 Replies)
Discussion started by: Eddie_The_Head
4 Replies

9. UNIX for Dummies Questions & Answers

Garbage characters in display

:confused: I recently left managment and came back to AIX administration. So I am a bit rusty to say the least. The issue I am having is with the term settings when I either simply telnet to my AIX unit or even when I use an emulator like puTTY or a VAR provided one. Once I am logged into... (0 Replies)
Discussion started by: Haleja001
0 Replies
Login or Register to Ask a Question