Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re^7: string value assignment

by abidq (Initiate)
on May 14, 2011 at 16:29 UTC ( [id://904847]=note: print w/replies, xml ) Need Help??


in reply to Re^6: string value assignment
in thread string value assignment

sorry i got asleep while solving now listen:
#!/usr/bin/perl $line=$ARGV[0]; #input file1 containing string list $name=$ARGV[1]; #output file, given at linux command chomp($line); chomp($name); $amino="ABC"; @cc=split(//,$amino); $line=~ s/[\s]//g; @prot=split(//,$line); $len=@prot; open(NAS,">>$name"); print NAS"0"; close NAS; open(MAJ,"valfile"); #input file 2 containing values while($li=<MAJ>){ chomp($li); $val=""; @value=split(/ +/,$li); for($p=0;$p<@prot;$p++){ for($a=0;$a<@cc;$a++){ if($prot[$p] eq "$cc[$a]"){ $val +=$value[$a]; } } $val1=$val/$len; $val1=sprintf "%5.3f",$val1; } $number++; open(MAL,">>$name"); print MAL" $number:$val1"; close MAL; } close MAJ; open(MAL1,">>$name"); print MAL1"\n"; close MAL1;

this code finely processes the string but only line 1 ;your job is to make it take all lines of string LIKE THE WAY IT TAKES ALL LINES FROM VALUES (input file 2 ) FILE. also go through my original question where instructions/pseudo code is given

Replies are listed 'Best First'.
Re^8: string value assignment
by marinersk (Priest) on May 14, 2011 at 20:20 UTC

    edit: Okay, I'm an idiot. One of the filenames is hard-coded in the script. But we're still stumbling over the idea that there are two input files, and the script only opens one. So I'll leave the rest of this message intact, to show what an idiot I was in making up two new filenames instead of just the one which is actually missing.

    Okay, so I've entered your data into two input files just like it says in the first message:

    -----( Begin file1.txt )-----
    BCA 
    
    CA 
    
    ACBAA 
    
    -----( End file1.txt )-----
    -----( Begin file2.txt )-----
    1 2 3 
    
    11 22 33 
    
    -----( End file2.txt )-----
    

    I don't know why you have the extra blank lines in the files, but you showed them that way in the original message, so that's how I've entered them.

    Now I run your script:

    C:\Steve\Projects\PerlMonks\AminoSplit>perl amino.pl file1.txt outfile.txt
    
    C:\Steve\Projects\PerlMonks\AminoSplit>dir
    
     Volume in drive C is CBoot
     Volume Serial Number is B4AB-1A65
    
     Directory of C:\Steve\Projects\PerlMonks\AminoSplit
    
    05/14/2011  02:12 PM    <DIR>          .
    05/14/2011  02:12 PM    <DIR>          ..
    05/14/2011  02:10 PM                 0 $Notes.txt
    05/14/2011  02:08 PM               870 amino.pl
    04/15/2010  11:16 AM               107 ci.cfg
    05/14/2011  06:29 AM                39 doit.bat
    05/14/2011  02:09 PM                25 file1.txt
    05/14/2011  02:10 PM                23 file2.txt
    05/14/2011  02:08 PM    <DIR>          new
    05/14/2011  02:08 PM    <DIR>          old
    05/14/2011  02:12 PM                 3 outfile.txt
                   7 File(s)          1,067 bytes
                   4 Dir(s)   3,317,903,360 bytes free
    

    And I notice it's written outfile.txt just like we would expect. Its contents do not look anything like your original message suggested it would look like.

    -----( Begin outfile.txt )-----
    0
    -----( End outfile.txt )-----
    

    You claim this works for one line.

    This does not look like what I would expect.

    I say again, I do not see anywhere in your Perl script where you are attempting to read the input file. In fact, all you seem to be doing is reading the input filename and acting on its name.

    I presume you'd actually like to process its contents. I can help you with that, but I need to know where in your script you are expecting to do so.

    A reply falls below the community's threshold of quality. You may see it by logging in.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://904847]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (3)
As of 2024-04-26 00:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found