Ir ao conteúdo
  • Cadastre-se

C Matriz10x10 solicitar dados do usuario e armazenar e m e n


Vilanovacar

Posts recomendados

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define m 5 // não estou coseguindo continuar por causa dessa linha e não entendi direito a questão ainda
#define n 5 

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main() 
{
	float matriz[m][n], m,n;
	int linha, coluna, cont1, cont2;
	for(linha = 0; linha < 10; linha++ )
	{
		for(coluna = 0; coluna < 10; coluna++)
		{
		
			printf("Digite um Numero entre 1 & 10: \n");	
			scanf("%f", &m);
			printf("Digite um numero entre 1 & 10: \n");
			if(m >= 1 && m <= 10)
			{
				matriz[m]= m;
				if(n >=1 && n<=10)
				{
					matriz[n]= n;
						
				}
			
			}
		}
	}
	for(cont1=0; cont1<=10; cont1++)
	{
		for(cont2=0; cont2<=10; cont2++)
		{
			printf("%2.f\t ",matriz[cont1][cont2]);
			
		}
	}
	
	
	return 0;
}

Boa noite pessoal, estou iniciando no mundo da programação e gostaria de uma ajuda nessa questão se possível. Fico desde já agradecido! 

Faça um algoritmo em linguagem C que receba como dado de entrada uma matriz de caracteres. Cada posição da matriz deve armazenar um caractere.

A dimensão da matriz deverá ser MxN, onde M e N são dados de entrada escolhidos pelo usuário. Declare a matriz como sendo de dimensão máxima 10x10, e valide os valores de M e N, que devem estar entre 1 e 10, incluindo 1 e 10. Para a validação, o usuário deve ficar preso no programa enquanto não digitar um número válido para M e para N.

Após escolhida a dimensão da matriz e povoado ela com caracteres. Faça:

• Conte o número de ocorrências de cada caractere que aparece na matriz. Após a contagem, liste cada caractere digitado e o número de ocorrências;

• Crie uma função que receba como parâmetro o primeiro caractere cadastrado na matriz. A função deve retornar um dado numérico. Se o caractere for maiúsculo, retorne na função o resultado deste caractere dividido por 10. Caso contrário, retorne o resultado do caractere multiplicado por 2;

 

Imprima na tela um teste do seu programa utilizando como primeiro caractere a primeira letra do seu nome.

Link para o comentário
Compartilhar em outros sites

image.png.92bcd1701833adf9d86bd99c541caeed.png

 

 

Não é uma boa ideia usar #define com nomes pequenos assim. Não por acaso você vai reparar que em geral nas constantes em C eles tem nomes enormes, sempre tudo em maiúsculas e cheios de _ e tal.... 

 

Exemplo: veja um pedaço de limits.h 


#define MB_LEN_MAX    5
#define SHRT_MIN    (-32768)
#define SHRT_MAX      32767
#define USHRT_MAX     0xffff
#define INT_MIN     (-2147483647 - 1)
#define INT_MAX       2147483647
#define UINT_MAX      0xffffffff
#define LONG_MIN    (-2147483647L - 1)
#define LONG_MAX      2147483647L
#define ULONG_MAX     0xffffffffUL
#define LLONG_MAX     9223372036854775807i64
#define LLONG_MIN   (-9223372036854775807i64 - 1)
#define ULLONG_MAX    0xffffffffffffffffui64

#define _I8_MIN     (-127i8 - 1)
#define _I8_MAX       127i8
#define _UI8_MAX      0xffui8

#define _I16_MIN    (-32767i16 - 1)
#define _I16_MAX      32767i16
#define _UI16_MAX     0xffffui16

#define _I32_MIN    (-2147483647i32 - 1)
#define _I32_MAX      2147483647i32
#define _UI32_MAX     0xffffffffui32

#define _I64_MIN    (-9223372036854775807i64 - 1)
#define _I64_MAX      9223372036854775807i64
#define _UI64_MAX     0xffffffffffffffffui64

Esse é um header onde tem apenas #define com limites, como o maior inteiro por exemplo, INT_MAX.

É sempre bom imitar os caras que escrevem isso, porque eles são os melhores.

 

E porque eles escrevem assim?

Tudo em maiúsculas, cheio de underline e tal? Para minimizar a chance de bater de frente com uma variável num programa que use esse #define e tenha uma variável com o mesmo nome.


E você acha que eles tem razão? Eles tem. 

 

Veja o que você fez:

No mesmo programa criou um #define n para 4 e linhas abaixo declarou uma variável n que vai ser substituída por 5 graças ao seu #define. Sério? Não use um #define assim. Use valores enormes, dois _ sei lá. Mas 'n'? durou 4 linhas.

 

Não faça isso. No geral, até evite #define em projetos pequenos

 

Em relação esse problema, foi muito discutido aqui nesses dias. Veja por exemplo em 

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...