text crypt segítség

Hi!

Kellene egy kis segítség. Txt fájlt akarok kódolni egy spec módszerrrel.

A lénygeg:
text1 fájl tartalma:
alma alma korte

A kimeneti fájl tartalma text2.txt

a3l4m5a6 6a5l3m2a1 3k4o5r6t9e1
A lényeg, hogy minden karakter helyere (szóköz is) egy random (0-9 kozes eso ) szamot szurok be.

Köszi a segítséget.

Hozzászólások

akkor bash a barátod, illetve $(($RANDOM%10)).

(vagy $(expr $RANDOM % 10))

Javaslom tanulmányoznod még a read parancsot, és egy while ciklust, no meg a karakterenkénti stringföldolgozást.

ami át van húzva, azt teljesen fölösleges elolvasni. az olyan, mintha ott sem lenne

Egy php-s valami:


<?php

$in = "alma korte barack";
$out = NULL;

for($i = 0; $i < strlen($in); $i++)
{
	$out .= $in[$i] . rand(0,9);
}

print("Out: ".$out);
?>

--
A gyors gondolat többet ér, mint a gyors mozdulat.

C++ hányás (tuti rossz):


#include <iostream>
#include <fstream>
using namespace std;

int main()
{
	ifstream inFile;
	ofstream outFile;
	
	inFile.open("be.txt");
	if(!inFile)
	{
		cout << "Could not open inFile!" << endl;
		exit(1);
	}
	else
	{
		outFile.open("ki.txt");
		if(!outFile)
		{
			cout << "Could not open outFile!" << endl;
			exit(1);
		}
		else
		{
			while(!inFile.eof())
			{
				string temp = "";
				int randInt = 0;
				string::const_iterator ci;
				
				getline(inFile, temp);
				srand((unsigned)time(0));
				
				for(ci = temp.begin(); ci != temp.end(); ci++)
				{
					if(*ci != '\n')
					{
						randInt = rand() % 10;
						outFile << *ci << randInt;
					}
				}
				outFile << endl;
			}
		}
	}
        inFile.close();
        outFile.close();

	return 0;
}

# g++ -omycrypto mycrypto.cpp

--
A gyors gondolat többet ér, mint a gyors mozdulat.

$(man awk)
$(man mawk)
$(man nawk)
$(man gawk)

szerk.:
kancsó szpemmerendzsínméjkernek teccik lenni vagy azt kicselezőnek?

ami át van húzva, azt teljesen fölösleges elolvasni. az olyan, mintha ott sem lenne

megoldás pythonban...


#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys, random, codecs

rnd = random

if len(sys.argv)<2:
    print "A használathoz adj meg egy fájlnevet paraméterként! Például:"
    print sys.argv[0], "valami.txt"
    sys.exit(1) 

for arg in sys.argv[1:]:
    try:
        f = codecs.open(sys.argv[1], 'r', 'utf-8')    
    except IOError:
        print 'Nem tudtam megnyitni: ', arg
    else:
        f_ki = codecs.open(sys.argv[1].replace(".","_2."), 'w', 'utf-8')
        f_ki.flush()
        for sor in f.readlines():
            sor_ki=""
            for c in sor[0:len(sor)-1]:
                sor_ki=sor_ki + c + str(rnd.randint(0,9))
            print sor_ki
            sor_ki = sor_ki + "\n"
            f_ki.write(sor_ki)
        f_ki.close()
        f.close()