1
Linguagens de Programação
PUC
1
Linguagens de Programação
PUC
2
Linguagens de Programação
PUC
2
Linguagens de Programação
PUC
1
Linguagens de Programação
PUC
2
Linguagens de Programação
PUC
1
Linguagens de Programação
PUC
26
Linguagens de Programação
PUC
2
Linguagens de Programação
UNIABEU
2
Linguagens de Programação
UNIFESP
Texto de pré-visualização
Página 1 de 2 Exercicios pesquisas e atividades DESAFIO 2022 2 DESAFIO FATORIAL DE 1000000 Este desafio é opcional e individual Ninguém é obrigado a participar desta atividade Os alunos que não participarem serão avaliados apenas pelos trabalhos apresentados no plano de ensino A realização deste desafio isenta a realização de qualquer outra atividade avaliativa da disciplina Resolução de Problemas de Natureza Discreta 20222 segundo as regras descritas neste documento Este desafio não isenta da participação nas aulas ou a realização dos TDEs Este desafio não tem notas parciais Ou o desafio está completo a cada fase e a nota será 10 ou o desafio está incompleto e a nota será zero No caso de nota zero o aluno poderá fazer as recuperações referentes aos RAs de cada fase Para conseguir os pontos relativos a este desafio você precisará postar um programa seguindo as orientações relativas a cada fase de desenvolvimento conforme especificado neste documento em um repositório do Github As datas de entrega coincidem com as semanas de recuperação de cada RA Todos os códigos os códigos produzidos deverão ser comentados em inglês Você deve ler todo este documento antes de começar e considerar o seguinte código de ética I Você poderá discutir todas as questões com seus colegas de classe professores e amigos Poderá também consultar os livros de referência da disciplina livros na biblioteca virtual ou não e a internet de forma geral e abrangente nos idiomas que desejar Contudo o trabalho é seu e deverá ser escrito por você Cópia é plágio OBJETIVO Pesquisar e praticar Pesquisar os conteúdos que irão complementar o material apresentado em sala ou nos livros sugeridos na ementa e praticar estes mesmos conceitos Esta é uma oportunidade para aprimorar sua formação e se destacar profissionalmente METODOLOGIA UTILIZADA Você pode e deve fazer uso das ferramentas disponíveis online para busca de informações Pode e deve consultar seus colegas de classe e pode mandar dúvidas para o professor até o dia anterior a data limite de entrega Observe as seguintes indicações ao usar o Google lembrese de usar os comandos de busca para melhorar a qualidade dos resultados faça sua pesquisa considerando apenas arquivos no formato pdf disponíveis em instituições de ensino em qualquer idioma publicados nos últimos 5 anos Caso seja necessário regidir algum texto para este Trabalho o texto deverá ser escrito segundo as normas da ABNT Use apenas as normas que fazem sentido para o trabalho de pesquisa que você está desenvolvendo Preocupese com as fontes espaçamentos formato de parágrafos e citações Por fim lembrese que nenhum trabalho exercício ou pesquisa científica ou acadêmica admite qualquer tipo de plágio e que todos os conceitos que você trouxer para o seu trabalho deverão Página 2 de 2 Exercicios pesquisas e atividades DESAFIO 2022 2 ser acompanhados da citação correta Lembrese também que todos os trabalhos enviados passarão por um sistema de avaliação de plágio e que trabalhos contendo plágio serão zerados ENUNCIADO O fatorial de 100 é 933262154439441526816992388562667004907159682643816214685929638952175999932299156 08941463976156518286253697920827223758251185210916864000000000000000000000000 Este é um número inteiro com 158 dígitos Sue trabalho será fazer um programa em C que seja capaz de calcular o Fatorial de 1000000 e computar o tempo necessário para isso usando quatro técnicas distintas A Usando as ferramentas e otimizações fornecidas pela linguagem C B Usando Assembly embarcado em código C para fazer os cálculos C Usando Assembly e o método de David Harvey Joris van Der Hoeven 2020 D Usando Assembly e a Tabela de Multiplicação Dinâmica O cálculo de fatorial é um cálculo de inteiros que muito rapidamente atinge os limites máximos de números que podem ser armazenados nos tipos de dados disponíveis nas linguagens de programação Sendo assim é necessário criar estruturas de dados específicas para este fim e controlar estas estruturas para permitir a realização destes cálculos O Fatorial de 1000000 terá 5565709 digitos Não é permitido usar qualquer biblioteca já existente para o cálculo de grandes números O método D só será discutido com os alunos que completarem os métodos A B e C ESTRATÉGIA Calcular o Fatorial de 100 e medir o tempo deste cáculo usando o método A Se conseguir você terá feito juz a nota integral do RA1 Calcular o Fatorial de 1000 e medir o tempo deste cálculo usando os métodos A e B Se conseguir você terá feito juz a nota integral da RA2 Calcular o Fatorial de 1000000 e medir o tempo deste cálculo usando os métodos A B e C Se conseguir você terá feito juz a nota integral da RA3 Calcular o Fatorial de 1000000 e medir o tempo deste cálculo usando os métodos A B C e D Se conseguir vamos publicar este estudo em inglês BIBLIOGRAFIA HARVEY D HOEVEN J V D Integer multiplication in time On log n Annals of Mathmatics Princeton University 28 Nov 2020
1
Linguagens de Programação
PUC
1
Linguagens de Programação
PUC
2
Linguagens de Programação
PUC
2
Linguagens de Programação
PUC
1
Linguagens de Programação
PUC
2
Linguagens de Programação
PUC
1
Linguagens de Programação
PUC
26
Linguagens de Programação
PUC
2
Linguagens de Programação
UNIABEU
2
Linguagens de Programação
UNIFESP
Texto de pré-visualização
Página 1 de 2 Exercicios pesquisas e atividades DESAFIO 2022 2 DESAFIO FATORIAL DE 1000000 Este desafio é opcional e individual Ninguém é obrigado a participar desta atividade Os alunos que não participarem serão avaliados apenas pelos trabalhos apresentados no plano de ensino A realização deste desafio isenta a realização de qualquer outra atividade avaliativa da disciplina Resolução de Problemas de Natureza Discreta 20222 segundo as regras descritas neste documento Este desafio não isenta da participação nas aulas ou a realização dos TDEs Este desafio não tem notas parciais Ou o desafio está completo a cada fase e a nota será 10 ou o desafio está incompleto e a nota será zero No caso de nota zero o aluno poderá fazer as recuperações referentes aos RAs de cada fase Para conseguir os pontos relativos a este desafio você precisará postar um programa seguindo as orientações relativas a cada fase de desenvolvimento conforme especificado neste documento em um repositório do Github As datas de entrega coincidem com as semanas de recuperação de cada RA Todos os códigos os códigos produzidos deverão ser comentados em inglês Você deve ler todo este documento antes de começar e considerar o seguinte código de ética I Você poderá discutir todas as questões com seus colegas de classe professores e amigos Poderá também consultar os livros de referência da disciplina livros na biblioteca virtual ou não e a internet de forma geral e abrangente nos idiomas que desejar Contudo o trabalho é seu e deverá ser escrito por você Cópia é plágio OBJETIVO Pesquisar e praticar Pesquisar os conteúdos que irão complementar o material apresentado em sala ou nos livros sugeridos na ementa e praticar estes mesmos conceitos Esta é uma oportunidade para aprimorar sua formação e se destacar profissionalmente METODOLOGIA UTILIZADA Você pode e deve fazer uso das ferramentas disponíveis online para busca de informações Pode e deve consultar seus colegas de classe e pode mandar dúvidas para o professor até o dia anterior a data limite de entrega Observe as seguintes indicações ao usar o Google lembrese de usar os comandos de busca para melhorar a qualidade dos resultados faça sua pesquisa considerando apenas arquivos no formato pdf disponíveis em instituições de ensino em qualquer idioma publicados nos últimos 5 anos Caso seja necessário regidir algum texto para este Trabalho o texto deverá ser escrito segundo as normas da ABNT Use apenas as normas que fazem sentido para o trabalho de pesquisa que você está desenvolvendo Preocupese com as fontes espaçamentos formato de parágrafos e citações Por fim lembrese que nenhum trabalho exercício ou pesquisa científica ou acadêmica admite qualquer tipo de plágio e que todos os conceitos que você trouxer para o seu trabalho deverão Página 2 de 2 Exercicios pesquisas e atividades DESAFIO 2022 2 ser acompanhados da citação correta Lembrese também que todos os trabalhos enviados passarão por um sistema de avaliação de plágio e que trabalhos contendo plágio serão zerados ENUNCIADO O fatorial de 100 é 933262154439441526816992388562667004907159682643816214685929638952175999932299156 08941463976156518286253697920827223758251185210916864000000000000000000000000 Este é um número inteiro com 158 dígitos Sue trabalho será fazer um programa em C que seja capaz de calcular o Fatorial de 1000000 e computar o tempo necessário para isso usando quatro técnicas distintas A Usando as ferramentas e otimizações fornecidas pela linguagem C B Usando Assembly embarcado em código C para fazer os cálculos C Usando Assembly e o método de David Harvey Joris van Der Hoeven 2020 D Usando Assembly e a Tabela de Multiplicação Dinâmica O cálculo de fatorial é um cálculo de inteiros que muito rapidamente atinge os limites máximos de números que podem ser armazenados nos tipos de dados disponíveis nas linguagens de programação Sendo assim é necessário criar estruturas de dados específicas para este fim e controlar estas estruturas para permitir a realização destes cálculos O Fatorial de 1000000 terá 5565709 digitos Não é permitido usar qualquer biblioteca já existente para o cálculo de grandes números O método D só será discutido com os alunos que completarem os métodos A B e C ESTRATÉGIA Calcular o Fatorial de 100 e medir o tempo deste cáculo usando o método A Se conseguir você terá feito juz a nota integral do RA1 Calcular o Fatorial de 1000 e medir o tempo deste cálculo usando os métodos A e B Se conseguir você terá feito juz a nota integral da RA2 Calcular o Fatorial de 1000000 e medir o tempo deste cálculo usando os métodos A B e C Se conseguir você terá feito juz a nota integral da RA3 Calcular o Fatorial de 1000000 e medir o tempo deste cálculo usando os métodos A B C e D Se conseguir vamos publicar este estudo em inglês BIBLIOGRAFIA HARVEY D HOEVEN J V D Integer multiplication in time On log n Annals of Mathmatics Princeton University 28 Nov 2020