Wprowadzanie danych do wektora

Wprowadzanie danych do wektora
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam znalazłem na internecie takie zadanko, dopiero się uczę TP mógłby ktoś naprowadzić jak to wykonać ?

Wpisać do wektora 10 znakowego dane z klawiatury, a następnie pokazać wprowadzone dane w jednym wierszu.
W Pętli sprawdzić wszystkie dane w wektorze czy są cyframi i policzyć je.
Wyświetlić ile cyfr i ile innych znaków znajduje się w wektorze.

Z góry dziękuję za pomoc

CR
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
0

Witam, wydaje mi się że chodzi o wczytanie 10 znaków z klawiatury, i zapisanie jej jako tablicę, może się mylę ale jeśli tak to:
*Musisz zdeklarować tablicę 10 elementową:

Kopiuj
 
type 
    tablica = array [1..10] of word; 

var
    i:integer;
    t:tablica;

*Teraz gdy już masz tablicę, musisz zapisywać do niej wprowadzane przez użytkownika znaki z klawiatury:

Kopiuj
BEGIN
 clrscr;
 for i:=1 to 10 do
     begin
        write('Wprowadź znak ,'i',: ') 
        readln(t[i]);
     end;
END.

*Teraz zaś musisz sprawdzać czy dany znak to cyfra, czy też litera. To już powinieneś wiedzieć jak zrobić (polecam do tego tablę kodów asci)

Nie wiem czy coś pomogłem, ale serdecznie pozdrawiam.

  • Rejestracja: dni
  • Ostatnio: dni
0

Dzieki, ale to co podales to przeciez jak tam dam znak inny niz Cyfra to wywala blad ;/

CR
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
0

To spróbuj zamienić word na byte albo string.

Proszę!

Kopiuj
uses crt;

type
    tablica = array [1..10] of string;

var
    i:integer;
    t:tablica;

BEGIN
 clrscr;
 for i:=1 to 10 do
     begin
        write('Wprowadź znak ',i,' : ') ;
        readln(t[i]);
     end;

 write('Twoje znaki to: ');
 for i:=1 to 10 do
   begin
     write(' ',t[i]);
   end;

//... tutaj musisz sobie dopisać procedurę sprawdzania czy to liczba czy cyfra, tak jak już wyżej pisałem najlepiej by było gdybyś to zrobił za 
//pomocą kodów Asci z tabeli asci.
   readln;
END. 
  • Rejestracja: dni
  • Ostatnio: dni
0

a ze znakami Ascii to robie np

if tab[i] < cyfra jedynki < cyfra dziewitki

CR
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
0

hmmmm. Jeśli chciałbyś zrobić to sprawdzanie znaków to polecam zmienić:

Kopiuj
uses crt;
 
type
    tablica = array [1..10] of string; 

na

Kopiuj
 uses crt;
 
type
    tablica = array [1..10] of char;

A tutaj podaję przykład jak zrobić to odróżnianie znaków od liczb.

Kopiuj

begin
     for i:=1 to 10 do
           begin
                   readln(t[i]);
                   if (t[i]>#47) and (t[i]<#58) then writeln('Liczba')
                  else
                  writeln('Znak');
            end;
     readln;
end;
{Wystarczy dopisać funkcję zliczającą litery i liczby, a gdybyś próbował zliczyć sumę cyfr to spróbuj:
Instrukcja ord(t[i]) albo byte(t[i]) albo integer(t[i]) }

Pozdrawiam!

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.