Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- //#include <string.h>
- struct coppia{
- char L;
- int N;
- };
- struct coppia CreaCoppia(char l, int n){
- struct coppia result;
- result.L='X';
- result.N=-1;
- if (l<'A' || l>'F' || n<0 || n>9) return result;
- result.L=l;
- result.N=n;
- return result;
- }
- int main(){
- struct coppia matrice[4][4];
- srand(time(NULL));
- char l;
- int i,j;
- /*punto 1*/
- for (i=0;i<4;i++){
- for (j=0;j<4;j++){
- printf("\nInserisci una lettera tra A e F: "); do{scanf("%c",&l); fflush(stdin);}while(l<'A' || l>'F');
- matrice[i][j]=CreaCoppia(l, rand()%9);
- }
- }
- /*punto 2*/
- printf("\nMatrice creata:");
- for (i=0;i<4;i++){
- printf("\n");
- for (j=0;j<4;j++){
- printf("<%c %d>\t", (*(matrice+i)+j)->L ,(*(matrice+i)+j)->N);
- }}
- /*punto 3*/
- printf("\nConcatenazione e Somma:\n");
- char concat[5];
- int somma;
- concat[4]='\0';
- for (i=0;i<4;i++){
- somma=0;
- for (j=0;j<4;j++){
- concat[j]=(*(matrice+j)+i)->L;
- somma+=(*(matrice+j)+i)->N;
- }
- printf("<%s %d>\t", concat, somma);
- }
- /*punto 4*/
- int D=16;
- do{
- if(D<15 || D>20) printf("\nInput errato!");
- printf("\nInserisci un numero tra 15 e 20: ");
- scanf("%d",&D); fflush(stdin);
- }while (D<15 || D>20);
- /*punto 5*/
- printf("\nmatrice Filtrata:");
- for (i=0;i<4;i++){
- printf("\n");
- for (j=0;j<4;j++){
- if ((11-(int)'A' +(*(matrice+i)+j)->N + (int) (*(matrice+i)+j)->L)<D)
- printf("<%c %d>\t", (*(matrice+i)+j)->L ,(*(matrice+i)+j)->N);
- else printf("X\t");
- }}
- printf("\nPremi invio per terminare...");
- getchar(); //mette in pausa
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement