Wpis z mikrobloga

@ziemniakzcebula: 4 to liczba iteracji, bo tyle jest wierszy wejsciowych i wyjsciowych. Jeśli w lancuchu literka powtarza sie wiecej niz 2 razy to na wyjsciu ilosc powtorzen trzeba dodac. Potrzeba jakiejs funkcji do lancuchow, zeby rozbic string na literki i cos ala tablica asocjacyjna indeksowana literka i majaca ilosc powtorzen jako wartosc, ale nie wiem czy takie tablice sa w matlabie, wiec pewnie dwie tablice w jednej litery, w drugiej ilosci
@ziemniakzcebula: Panie, jako ze po tygodniu pan wracasz bez rozwiazania, to znaczy ze niechcemisie mocno, a to niedobrze. Co do tego jak odczytywac pliki i zapisywac poszukaj sobie na necie albo w wykladach, bo na pewno bylo :P
Wpisanie w google frazy matlab open file zajmuje malo czasu.
Masz szczescie, ze mialem jeszcze zainstalowanego Matlaba:
1. Otwierasz plik przypisujac wynik funkcji otwierajacej do zmiennej
2. Pobierasz pierwsza linie pliku i przypisujesz
@NitrousOxide: witam. może troche mi się nie chce ale brakuje mi na to czasu, ponieważ ostatnie tygodnie to tylko praca i praca. dziękuję za takie obszerne wyjaśnienia, nie spodziewałem sie, że aż tyle mi przetłumaczysz :d wyspie się po nocce i zajme się tym w najbliższym czasie. Jeśli nie będzie mi wychodzić, a podejrzewam że łatwo nie będzie, to odezwe się w tym wątku :) dziekuje, jak dostanę stypendium za średnią
@NitrousOxide: a mógłbyś wkleic ten kod bez wczytywania i zapisywania do pliku ?:) będę musiał go całego przeanalizować i jakoś to będzie :) albo chociaż do zliczania z jednego wyrażenia :) chyba że nie da rady. dziś tłumaczył nam to wykładowca. mówił że trzeba to robić do każdej litery oddzielnie ale ty masz chyba lepszy pomysł i mógłbym go jakos zaskoczyć :)
@ziemniakzcebula: Ehh lepiej by było jakbyś sam to wymyślił, ale w sumie sam niedawno studentem byłem :)

file = fopen('input.txt','r');
iterations = str2num(fgetl(file));

for i = 1:iterations
fprintf('-----------');
inputstring = fgetl(file)
outputstring = '';
currentletter = '';
letter = '';
lettercounter = 0;
for j = 0:length(inputstring)-1
letter = substring(inputstring,j,j);
if letter == currentletter
lettercounter = lettercounter +1;
else
if lettercounter < 3
lettercounter = '';
end
outputstring = [outputstring currentletter