Skocz do zawartości
Mujahideen

Parzysta Ilość Bitów Liter W C

Rekomendowane odpowiedzi

Kumple dostali oto takie zadanie na kolokwium:

 

Tablica zawiera znaki char, ile jest tam liter, których kod zawiera parzystą ilość bitów.

 

Za cholerę nie mogę zrozumieć treści, mam nadzieję, że mi ktoś ją przełoży na zrozumialszy język :) a może zapoda rozwiązanie, bo wiem, że będzie ono króciutkie.

 

Czy chodzi tu o znaki ASCII i ich przełożenie na numery w kodzie ASCII, a potem jakąś zamianę ich numerów na system dwójkowy?.

Edytowane przez Mujahideen

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Tresć jest albo nieprecyzyjna, albo źle przepisana :) Każdy kod znaku ASCII zawiera parzystą ilość bitów - bo jest reprezentowany przez 1 bajt, czyli 8 bitów (liczba parzysta :) ).

Może chodziło o parzystą ilość bitów ustawionych lub wyzerowanych...

Edytowane przez Sam Sung

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

dokładnie też nie rozumię zadania ale przecież jezeli zdeklarujemy zmienną

char znak;

to ma ona stały rozmiar zależy chyba od systemu.

Chyba najczęściej jest to 1 Bajt. Więc ilość bitów zawsze będzie parzysta. Chyba żeby to interpretować jako litery i ich wartość ztablicy ASCII. Wtedy chyba by trzeba posprawdzać ile kolejne litery mają i to jakoś poprzeliczać i jakąś zależność znaleźć. Ale z tym to już Ci nie pomogę.

//Pozatym nie będzie mnie teraz przez jakiś czas :(

 

//Sam Sung mnie wyprzedził

Edytowane przez Artur.M

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Każdy kod znaku ASCII zawiera parzystą ilość bitów - bo jest reprezentowany przez 1 bajt.

Tak sobie wymyśliłem, że treść zadania można zrozumieć jako podchwytliwą, ponieważ skoro każdy znak ASCII ma parzystą ilość bitów to wystarczy policzyć ilość liter, bo w treści jest polecone: policzyć ilość liter o parzystej ilości bitów.

 

#include <iostream.h>

#include <string.h>

main()

{

char lancuch[10];

int i,ilosc=0;

cout<<" Wczytaj tablice znakow: ";

cin >> lancuch ;

for (i=0;i<strlen(lancuch);i++)

if((lancuch>64&&lancuch<91)||(lancuch>96&&lancuch<123))

ilosc++;

cout<<"\n Ilosc liter o parzystej liczbie bitow: "<<ilosc<<".";

}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Może chodzi też o to, że w niektórych systemach 1Bajt znakowy to 7bitów, co wystarcza na zwykle litery i cyfry.

8 bitów (czyli parzyście) oznaczałoby że chodzi o dziwne znaki powyzej 127 z tabilcy ASCII, zresztą i tak zadanie jest dość chore IMHO i świadczy o braku pomysłowości ze strony nauczyciela.

Własnie dlatego nie poszedłem na studia informatyczne, nie dumam nad jakąś z pupy matematyką wyższą lub zliczaniem bitów, tylko piszę aplikację biznesowe w RAD kodem zarządzanym i nawet mnie nie interesuje na jakim procesorze to będzie chodzić.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...