EDA 03 2019
1 pág.

EDA 03 2019

Disciplina:Programação I16.950 materiais228.136 seguidores
Pré-visualização1 página
Escreva um programa que permite ao utilizador introduzir dados de uma matriz quadrada (4x4) e em seguida:
a) Mostrar os elementos da diagonal principal.
b) Mostrar todos elementos da diagonal que são números primos.
c) Mostra a soma do menor e maior número da matriz.
	#include<stdio.h>
#include<conio.h>
#define M 4

void inserir(int array[M][M]) {
 int i,j;

 for(i=0; i<M; i++) {
 for(j=0; j<M; j++) {
 printf(&quot;Numero: &quot;);
 scanf(&quot;%d&quot;,&array[i][j]);
 }
 }
}

void mostrar(int array[M][M]) {
 int i,j;

 for(i=0; i<M; i++) {
 for(j=0; j<M; j++) {
 printf(&quot;%d \t&quot;, array[i][j]);
 }
 }
 printf(&quot;\nElementos da diagonal principal: &quot;);
 for(i=0; i<M; i++) {
 for(j=0; j<M; j++) {
 if(i==j) {
 printf(&quot;%d\t&quot;,array[i][j]);
 }
 }
 }
}

// metodo para achar numero primo

int primo(int numero) {
 int i,counter=0;

 for(i=1; i<=numero; i++) {
 if(numero % i == 0)
 counter++;
 }
 if(counter == 2) {
 return numero;
 } else {
 return 0;
 }
}

// metodo para achar numero menor

int min(int array[M][M]) {
 int i,j,min=array[0][0];

 for(i=0; i<M; i++) {
 for(j=0; j<M; j++) {
 if(array[i][j] < min) {
 min = array[i][j];
 }
 }
 }
 return min;
}
// metodo para achar numero maior

int max(int array[M][M]) {
 int i,j,max=array[0][0];

 for(i=0; i<M; i++) {
 for(j=0; j<M; j++) {
 if(array[i][j] > max) {
 max = array[i][j];
 }
 }
 }
 return max;
}

void main(){
 int myArray[M][M]; //= {{2,13,4,5},{9,3,5,6},{3,8,7,18},{2,3,5,1}};
 int i, j, menor, maior;

 inserir(myArray);
 printf(&quot;Dados da matriz: \n&quot;);
 mostrar(myArray);

 printf(&quot;\nElementos da diagonal principal que sao primos: &quot;);
 for(i=0; i<M; i++) {
 for(j=0; j<M; j++) {
 if(i==j) {
 if(primo(myArray[i][j]) != 0) {
 printf(&quot;%d&quot;, myArray[i][j]);
 } else {
 printf(&quot; &quot;);
 }
 }
 }
 }
 printf(&quot;\n&quot;);
 menor = min(myArray);
 maior = max(myArray);

 printf(&quot;Menor: %d\n&quot;,menor);
 printf(&quot;Maior: %d\n&quot;,maior);
 printf(&quot;Soma: %d + %d = %d\n&quot;,menor, maior,(menor+maior));
}

Um programa que permite ao utilizador introduzir o nome e em seguida o programa deverá imprimir o nome em ordem alfabética crescente: isto é: se introduzir a palavra nome, deverá mostrar: emno
	#include <stdio.h>
#include <conio.h>
#include <string.h>
#define M 30

void main() {
 char c, nome[M];
 int x, i,j;

 printf(&quot;Nome: &quot;);
 scanf(&quot;%s&quot;,&nome);

 printf(&quot;Nome inserido: %s\n&quot;,nome);

 x = strlen(nome);
 for(i=0; i<x; i++) {
 for(j=0; j<x; j++) {
 if(nome[i]<nome[j] && nome[i] != ' '){
 c = nome[i];
 nome[i] = nome[j];
 nome[j] = c;
 }
 }
 }
 printf(&quot;Nome na ordem alfabetica: %s\n&quot;,nome);
}

Ibraimo Aly