fabriciocarraro
-
Total de itens
9 -
Registro em
-
Última visita
Posts postados por fabriciocarraro
-
-
Fala pessoal!
Eu to fazendo um projeto que eu preciso criar um Diagrama de Casos de Uso para um sistema de transferência de arquivos.
É simples, o arquivo estará em uma fila MQ, vai ser feito um programa em plataforma .NET que irá transferí-lo via TCP/IP para um banco de dados SQL.
A pergunta é, não tem ator externo nisso aí! Como eu poderia fazer um diagrama de casos de uso sem ator? Pra mim não faz sentido.
Obrigado pela ajuda!
Abraços!
-
Então cara, achei aqui nos meus arquivos antigos da faculdade, mas não sei se está completa essa versão que vou mandar aqui. De qualquer forma, pode ajudar bastante =) Ela funciona só para matrizes quadradas (obviamente).
/*******************************************/ /* Fabricio Carraro Magalhaes */ /* 03/10/06 */ /* */ /* Lab 8: */ /* Utilizacao de funcoes e matrizes */ /* Programa que determina se uma */ /* matriz quadrada dada é ou não */ /* um quadrado magico. */ /********************************************/ #include <stdio.h> /*Biblioteca*/ #include <stdlib.h> /*Funcao que faz a leitura da dimensao e dos elementos de uma matriz*/ void leitura(int *n, int matriz[100][100]){ int i, j; /*Declaracao de variaveis*/ printf("Digite a dimensao da matriz quadrada: "); scanf("%d", n); /*Leitura da dimensao*/ printf("Digite os elementos da matriz:\n"); for(i = 0; i < *n; i++){ for(j = 0; j < *n; j++) scanf("%d", &matriz[i][j]); /*Leitura dos elementos*/ } } /*Funcao que calcula a soma da diagonal principal de uma matriz*/ int diagonalprincipal(int n, int matriz[100][100]){ int i, somapri = 0; /*Declaracao de variaveis*/ for(i = 0; i < n; i++) somapri += matriz[i][i]; /*Soma da diagonal principal*/ return somapri; /*Retorna o valor encontrado*/ } /*Funcao que calcula a soma da diagonal secundaria de uma matriz*/ int diagonalsecundaria(int n, int matriz[100][100]){ int i, j, somasec = 0; /*Declaracao de variaveis*/ for(i = 0; i < n; i++){ for(j = n; j > 1; j--) somasec += matriz[i][j]; /*Soma da diagonal secundaria*/ } return somasec; /*Retorna o valor encontrado*/ } /*Funcao que calcula e compara soma da diagonal de uma matriz com...*/ /*...a soma de cada uma de suas linhas, e retorna "1"(um) se for igual*/ int linha(int n, int matriz[100][100], int somadiag){ int i, j = 0, somalin; /*Declaracao de variaveis*/ while (j < n){ somalin = 0; for(i = 0; i < n; i++) somalin += matriz[i][j]; /*Soma das linhas*/ if(somalin == somadiag) j++; else return -1; /*Retorna "-1" se não for igual*/ } return 1; /*Retorna "1"(um) se for igual*/ } /*Funcao que calcula e compara soma da diagonal de uma matriz com...*/ /*...a soma de cada uma de suas colunas, e retorna "1"(um) se for igual*/ int coluna(int n, int matriz[100][100], int somadiag){ int i = 0, j, somacol; /*Declaracao de variaveis*/ while (i < n){ somacol = 0; for(j = 0; j < n; j++) somacol += matriz[i][j]; /*Soma das colunas*/ if(somacol == somadiag) i++; else return -1; /*Retorna "-1" se não for igual*/ } return 1; /*Retorna "1"(um) se for igual*/ } int main(){ int matriz[100][100], n, somadiag; /*Declaracao de variaveis*/ leitura(&n, matriz); /*Chama a funcao que le a matriz*/ somadiag = diagonalprincipal(n, matriz); if(somadiag == diagonalsecundaria(n, matriz)){ if(linha(n, matriz, somadiag) == 1){ /*Se for "1", ou seja, igual*/ if(coluna(n, matriz, somadiag) == 1) /*Se for "1"*/ printf("é magico!\n"); else printf("não é magico!\n"); } else printf("não é magico!\n"); } else printf("não é magico!\n"); system("pause"); return 0; }
-
Eu já fiz esse programa pra faculdade. Quando chegar em casa te mando aqui pra você dar uma estudada.
-
Cara, isso é mais matemática do que programação. Qual é a distância entre 2 pontos no plano cartesiano? Por exemplo, para os pontos A(x1,y1) e B(x2,y2) seria D = sqrt((x2-x1)² + (y2-y1)²).
Vamos levar isso para o seu programa, e de um jeito bem iniciante:
#include <stdio.h> #include <stdlib.h> #include <math.h> int main( ) { float t1, t2, pinicial_x, pinicial_y, pfinal_x, pfinal_y; float distancia; printf("Digite o valor de t inicial\n"); scanf("%f", &t1); printf("Digite o valor de t final\n"); scanf("%f", &t2); pinicial_x = -2 + t1; pinicial_y = (4*t1/3)+ 2; pfinal_x = -2 + t2; pfinal_y = (4*t2/3)+ 2; distancia = sqrt(((pfinal_x - pinicial_x)*(pfinal_x - pinicial_x)) + ((pfinal_y - pinicial_y)*(pfinal_y - pinicial_y))); printf("A distancia entre os pontos é %f\n", distancia); system("pause"); return 0; }
Esse é um código genérico, para quaisquer valores iniciais e finais de "t". Para o seu caso específico, a resposta é 10, pode conferir.
-
Alguém....?
-
Cara, vocÊ conhece estruturas em C?
Dê uma olhada nesse site aqui: http://www.ncc.up.pt/~nam/aulas/9798/pi/estruturas.html
Depois poste aqui seu resultado, que a gente te ajuda.
PS: Lembre-se que para o endereço e telefone você terá que fazer outra estrutura, e declará-la dentro das estruturas principais (aluno, professor..)
-
Pessoal,
Eu fiz um curso básico de Python e gostei MUITO! Achei a linguagem de programação mais interessante dentre as que eu conheço (C, C++, Java, PHP).
Gostaria de saber 2 coisas:
1 - Quais são as possibilidades do Python? Como fiz um curso básico, manteve em calcular áreas, organizar listas, etc, mas até onde eu posso ir com o Python?
2 - Vocês podem me recomendar algum livro bom e didático para aprendizado auto-didata de Python?
Obrigado!
-
Como o amigo acima disse, a melhor forma de fazer isso é utilizando estruturas e listas ligadas (ou encadeadas, mesma coisa). O seu único "problema" seria definir a ordem das prioridades, para saber aonde na sua lista ligada irá entrar um utente com prioridade maior.
Programa para transformação (RAPIDO)
em C, C++
Postado
Suas variáveis são todas tipo inteiro (int), mas seus resultados são do tipo ponto flutuante (float). Acredito que seja isso.
Além disso, você não declarou a variável resultado.