11. tétel: Szótagszám

Feladat: Egy-egy dalszövegnél időnként szükség van arra, hogy soronként hány szótagból áll egy dalszöveg. Szöveges felületen írjon egy programot, amely beolvas egy DAL.TXT állományt soronként, majd kiírja minden egyes sor elé kiírja, hogy hány szótagból áll.
Feltételezheti, hogy a fájl létezik és legalább 1 sor van benne. A szöveg minden karaktere kisbetűs és az egész szöveg UTF-8 kódolású. A működő programot és a kódot mutassa be tanárának!

Egy lehetséges megoldás Visual C# nyelven:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;            //Ez kell a fájlműveletekhez

namespace 11tetel
{
    class Program
    {
        static void Main(string[] args)
        {
            //11. tétel: Szótagszám
            StreamReader bevisz = new StreamReader("DAL.TXT", System.Text.Encoding.UTF8);
            string s;           //Segédváltozó
            int szamol;         //Soronkénti szótagszám
            do
            {
                s = bevisz.ReadLine();
                szamol = 0;
                for (int i = 0; i < s.Length; i++)
                {
                    if ((s[i]=='a') || (s[i] == 'á') || (s[i] == 'e') || (s[i] == 'é') || (s[i] == 'i') || (s[i] == 'í') || (s[i] == 'o') || (s[i] == 'ó') || (s[i] == 'ö') || (s[i] == 'ő') || (s[i] == 'u') || (s[i] == 'ú') || (s[i] == 'ü') || (s[i] == 'ű'))
                        //Ezt listával is meg lehetne oldani, de ez így egyszerűbb (és csúnyább is)
                    {
                        szamol++;
                    }
                }
                Console.Write("{0}: ",szamol);
                Console.WriteLine(s);
            } while (!bevisz.EndOfStream);
            bevisz.Close();


            Console.WriteLine("\n\nA program futása véget ért!");
        }
    }
}
//A megoldás hibája: csak a kisbetűket számolja össze. HA a Vagy-okat bővítjük, akkor jöhetnek a nagybetűk is. 

A DAL.TXT egyik lehetséges forrása:

T. Tamás Ferenc: Parti-himnusz

Lassan gyűlik a mulatni vágyó jónép,
Mint ezerszínű, tarka-barka mozgókép.
Csillogó ruhás nők pompáznak fényesen,
Lépkednek a buliba ál-szemérmesen.
Mulatni készül itt a gyülevész népség,
Itt már senkinek sem cél mértékletesség.
A józanság mértékét rég összetépték,
Senkinek sem kell immár az álszerénység!
Tárva-nyitva a kapu, beengedték az őrülteket,
Körbeadják mindenkinek a teli rumosüveget, 
Kivillanó formás combok diktálják a vad ütemet,
A parti éjszakáján érezd át az önkívületet!

A bombanő csakis a tükörnek pózol,
A magányos srác mindenkinek hajbókol,
Az időjós hamisan előre jósol,
A vad hódító szemérmesen behódol.
Az őrület éjszakáján mindent szabad,
Itt kiélheted vadító vágyaidat.
Szakítsd le magadról az angyalszárnyakat
És növeszd ki a vörös ördögszarvakat! 
Tárva-nyitva a kapu, beengedték az őrülteket,
Körbeadják mindenkinek a teli rumosüveget, 
Kivillanó formás combok diktálják a vad ütemet,
A parti éjszakáján érezd át az önkívületet!

Mikor a víg éjszaka csúcspontjára hág,
Középre pattan a rég elfeledett sztár,
Hamisan énekel, mint béna kismadár,
Aztán hamvába hullik, mint egy tűzmadár. 
Gyomrodban érezd a zene vad ritmusát!
Dúdolgasd az őrjöngő dalok rigmusát!
Itt nem a józanság a követendő cél,
Ördögibb legyél a legrosszabb ördögnél!
Tárva-nyitva a kapu, beengedték az őrülteket,
Körbeadják mindenkinek a teli rumosüveget, 
Kivillanó formás combok diktálják a vad ütemet,
A parti éjszakáján érezd át az önkívületet!