Pagina 2 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 39
  1. #11
    un'altra domanda perchè hai definito la matrix come BOOL??? se la metto come INT và lo stesso...mi spieghi

    grazie ancora
    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  2. #12
    Utente bannato
    Registrato dal
    Sep 2003
    Messaggi
    1,012
    Il tipo bool può contenere solo valori di vero/falso o 0/1, quindi bit.
    La matrice è matrix[][].

    Ora cerco di risolvere anche l'altro problema e commentare n po'!

  3. #13
    Originariamente inviato da iguana13
    Il tipo bool può contenere solo valori di vero/falso o 0/1, quindi bit.
    La matrice è matrix[][].

    Ora cerco di risolvere anche l'altro problema e commentare n po'!
    si ok messo int sul valore della matrice tanto i valori che deve contenere la matrice sono binari solo bit 0 e 1 è indifferente allora

    Si i commenti nn ti preoccupare...il problema è il fatto di aggiungere gli 1 (o gli 0 se sono già in numero pari gli 1) AD OGNI RIGA E COLONNA DELLA MATRICE...

    Ottenere poi una stringa finale insomma una riga di bit 0 e 1 da trasformare in decimale(ascii cioè) e in carattere
    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  4. #14
    Utente bannato
    Registrato dal
    Sep 2003
    Messaggi
    1,012
    Ora ho solo aggiunto i commenti al codice, che è lo stesso.
    Analizzalo per bene!

    Codice PHP:
    #include <iostream>
    #include <cstdlib>
    #include <conio.h>
    #include <math.h>

    using namespace std;

    // Numero massimo di carattere
    // (costante)
    #define MAX_C 100

    void main()
    {
        
    cout << "Inserire i caratteri, per terminare '.'" << endl;

        
    // Il valore del carattere che chiede
        // è unsigned 
        
    unsigned char c;
        
    // La matrice:
        // il primo indice è il carattere
        // il secondo è il bit
        
    bool matrix[MAX_C][8];
        
    // Numero totale di caratteri
        
    int numchar 0;
        
    // Contatori per la matrice
        
    int i,j;

        do {
            
    // Attende la pressione di un carattere
            
    getche();
            
    // Se è un punto, termina
            
    if(c=='.') break;
            
    // Incrementa il numero di caratteri
            
    numchar++;
            
    // Altro ciclo: per ogni bit,
            // partendo dall'ultimo...
            
    for(i=71i--)
            {
                
    // Faccio il modulo con 2 per trovare
                // la cifra binaria
                
    matrix[numchar-1][i] = 2;
                
    // Dicido c per due
                
    >>= 1;
            }
            
    // Continua finchè non si attiva il break di prima
        
    } while(1);
        
    // Scrive tutto in binario ora
        
    cout << "Ecco tutti i valori in binario:" << endl;
        
    // Ciclo esterno: per ogni carattere...
        
    for(j=0j<numcharj++) {
            
    // Ricalcolerà il carattere partendo dalla cifra binaria
            
    0;
            
    // Ciclo interno: per ogni bit...
            
    for(i=0i<8i++) {
                
    // c = c + (2 ^ numerobit) * valore_bit
                
    += pow(2, (1)) * matrix[j][i];
                
    // Scrivo il valore del bit
                
    cout << matrix[j][i];
            }
            
    // Scrivo anche il carattere
            
    cout << "\t=\t" << << endl;
        }


  5. #15
    Utente bannato
    Registrato dal
    Sep 2003
    Messaggi
    1,012
    Aggiungere 0 non significa lasciarlo così com'è??
    E poi se ogni colonna della matrice è un bit (0 o 1) come posso aggiungere 1 ad ogni bit?
    Non ha senso!!
    E' un esercizio per l'univ?

  6. #16
    si grazie tradotto in C e lo sto studiando attendo l'altra parte grazie mille

    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  7. #17
    Originariamente inviato da iguana13
    Aggiungere 0 non significa lasciarlo così com'è??
    E poi se ogni colonna della matrice è un bit (0 o 1) come posso aggiungere 1 ad ogni bit?
    Non ha senso!!
    E' un esercizio per l'univ?
    Cioè ora abbiamo tutti i numeri binari messi in una matrice OK
    poi...

    A questa matrice controllo per ogni riga se il numero dei bit 1 è pari: se lo è aggiungo(non è che lo sommo lo metto propio come elemento nuovo) a sinistra della riga 0 ,se invece è dispari aggiungo un 1,sempre a sinistra,rendendoli cosi' cmq pari(il numero dei bit 1 cioè).

    La stessa identica cosa la faccio per ogni colonna della matrice aggiungendo un 1 o uno 0,con lo stesso criterio di sopra, ma questa volta in basso al termine di ogni colonna....

    La stringa cosi' ottenuta in basso la devo trasformare in decimale e poi nella corrispettiva lettera del codice ascii..

    No è un esercizio che è sul libro del 3 superiore informatica abacus che io frequento

    Ti sarei grato se mi aiutasti..
    E' un esercizio relativo al capitolo della trasmissione e controllo degli errori...

    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  8. #18
    Utente bannato
    Registrato dal
    Sep 2003
    Messaggi
    1,012
    Puoi fare un esempio di cosa devi fare?
    Nella matrice le colonne sono i songoli bit!!
    Esempio:

    01000010
    01000011
    00010001

    E poi la larghezza delle righe è fissa a 8! Se aggiungo 1 supero il limite del byte!

    Hai il testo integrale?

  9. #19
    Originariamente inviato da iguana13
    Puoi fare un esempio di cosa devi fare?
    Nella matrice le colonne sono i songoli bit!!
    Esempio:

    01000010
    01000011
    00010001

    E poi la larghezza delle righe è fissa a 8! Se aggiungo 1 supero il limite del byte!

    Hai il testo integrale?
    Si ti scrivo il testo integrale e propio l'esempio che c'è sul libro relativo a questo esercizio da svolgere..

    1)leggere una stringa da tastiera
    2)per ogni carattere della stringa effettuare la conversione ASCII/binario
    3)organizzare i caratteri cosi' ottenuti in una matrice(un carattere per riga),7 colonne.
    3)effettuare il controllo di parità incrociata,aggiungendo a ogni carattere un bit di parità orizzontale e,alla fine della stringa, un bit di parità verticale.
    4)tradurre nel corrispondente simbolo ASCII il byte aggiunto

    ESEMPIO:
    Supponendo che stringa letta sia MOUSE
    CODICE__ASCII___PARITA'_ORIZZONTALE
    M ==== 77 ======== 0 ____ 1 0 0 1 1 0 1
    O ==== 79 ======== 1 ____ 1 0 0 1 1 1 1
    U ==== 85 ======== 0 ____ 1 0 1 0 1 0 1
    S ==== 83 ======== 0 ____ 1 0 1 0 0 1 1
    E ==== 69 ======== 1 ____ 1 0 0 0 1 0 1

    PARITA' VERTICALE__0 ____1 0 0 0 0 0 1

    Il byte trovato ,in questo caso, è in binario 01000001,cioè il carattere ASCII 64 = 'A'

    Ecco tutto spero mi puoi aiutare grazie mille te ne sarei veramente grato

    Grazie
    ps ho messo quegli underscore per rendere il tutto + leggibile qua sul forum...
    ps2 la matrice deve avere,come da testo, la grandezza 7 infatti lavoriamo con il codice ascii a 7bit
    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  10. #20
    Utente bannato
    Registrato dal
    Sep 2003
    Messaggi
    1,012
    Per quelli in verticale non c'è problema!
    In orrizzontale ho certi dubbi...

    Vabbè appena ho tempo provo!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.