Wątek przeniesiony 2014-01-20 18:33 z Delphi i Pascal przez furious programming.

Zliczanie małych liter w tablicy

0

Witam udało mi się napisać program który liczy małe litery w tablicy jeśli zapełnimy ją pojedynczymi znakami. Chciałbym aby program zliczał litery jeśli elementami będą wyrazy czy zdania. Czy ktoś mógłby mi pomóc zmienić kod lub napisać od nowa jeśli trzeba.

var
    tab:array[1..5] of string;
     tab1:array['a'..'z'] of string;
    i,licz:integer;
    j:char;


begin
  licz:=0;
  for j:='a' to 'z' do
      tab1[j]:=j;

  for i:=1 to 5 do
      readln(tab[i]);

  for i:=1 to 5 do
   for j:='a' to 'z' do
    if tab[i]=tab1[j] then
    licz:=licz+1;
  writeln(licz);
  readln;
end.                     
1
  1. wywal tab1 - nie potrzebujesz jej.
  2. zawsze możesz sprawdzić - if tab[i] in ['a'..'z','A'..'Z'] then (owszem lepiej to zrobić przez porównania oraz or oraz and)
0

Chciałbym aby program zliczał litery jeśli elementami będą wyrazy czy zdania.

Z punktu widzenia kodu zwykła macierz jednowymiarowa jest tym samym co typ String, więc bez względu na to czy wykorzystwasz macierz czy łańcuch znaków i tak możesz się do obu odwoływać jak do tablic;

Jeśli masz na myśli to, że tablica ma zamiast pojedynczych liter przechowywać całe słowa (ciągi znaków) to zamiast jednej pętli trzeba zapisać dwie zagnieżdżone - jedna do iterowania po elementach tablicy, a druga do sprawdzania znaków w każdym ze słów;

Wątek przenoszę do działu Newbie, dlatego że dotyczy podstaw programowania.

1 użytkowników online, w tym zalogowanych: 0, gości: 1