Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática

Detalhes bibliográficos
Autor(a) principal: Almeida, Julliana do Couto
Data de Publicação: 2019
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Biblioteca Digital de Monografias da UnB
Texto Completo: https://bdm.unb.br/handle/10483/26356
Resumo: Trabalho de Conclusão de Curso (graduação)–Universidade de Brasília, Faculdade UnB Gama, 2019.
id UNB-2_148324332911ca5e562b2196961880ee
oai_identifier_str oai:bdm.unb.br:10483/26356
network_acronym_str UNB-2
network_name_str Biblioteca Digital de Monografias da UnB
repository_id_str 11571
spelling Almeida, Julliana do CoutoCosta Júnior, Edson Alves daALMEIDA, Julliana do Couto. Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática. 2019. 60 f. il. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Software)–Universidade de Brasília, Gama-DF, 2019.https://bdm.unb.br/handle/10483/26356Trabalho de Conclusão de Curso (graduação)–Universidade de Brasília, Faculdade UnB Gama, 2019.Produzir código gera erros que fazem parte do processo de aprendizagem. O problema disso é que muitas vezes eles não apresentam indícios visuais, o que significa que não geram erros pelo compilador. Neste caso, o erro é dito semântico, ele ocorre quando o desenvolvedor escreve um bloco de código que não condiz com a teoria naquele contexto. O erro semântico acontece porque as propriedades contidas nas operações do computador não reproduzem o que acontece na matemática. A associação, por exemplo, é propriedade válida dos inteiros que não acontece em todas as entradas em código. O objetivo deste trabalho, é apresentar problemas de erros semânticos de overflow em inteiros, overflow em ponto flutuantee, adicionalmente, classificar o operador % de acordo com seu retorno nas linguagens mais populares de 2019. Para os problemas de overflow houveram exemplos onde foi possível demonstrar matematicamente a taxa de erro esperada. E para todos os casos de overflow foram realizados experimentos, onde comparo os códigos com e sem overflow utilizando valores randômicos para as respectivas variáveis. E então, gero a taxa de erro para 10, 102 , 103 , 104 , 105 e 106 casos de testes, ilustradas no gráfico de cada problema.Submitted by Ilmara Leme (ilmara@unb.br) on 2020-12-29T00:03:56Z No. of bitstreams: 1 2019_JulianaDoCoutoAlmeida_tcc.pdf: 793178 bytes, checksum: 1bbc948967881b8658e8b5a6319923f1 (MD5)Approved for entry into archive by Biblioteca Digital de Monografias Gerência (bdm@bce.unb.br) on 2021-01-19T12:13:05Z (GMT) No. of bitstreams: 1 2019_JulianaDoCoutoAlmeida_tcc.pdf: 793178 bytes, checksum: 1bbc948967881b8658e8b5a6319923f1 (MD5)Made available in DSpace on 2021-01-19T12:13:05Z (GMT). No. of bitstreams: 1 2019_JulianaDoCoutoAlmeida_tcc.pdf: 793178 bytes, checksum: 1bbc948967881b8658e8b5a6319923f1 (MD5)Producing code causes errors that are part of the learning process. The problem of this is that they often do not show visual cues, which means that they do not generates errors by the compiler. In this case, the error is said to be semantic, it occurs when the developer writes a block of code that does not fit the theory in that context. The purpose of this paper is to present code examples where there are these errors followed by their respective solution.The examples chosen for this work were: arithmetic mean, minimum common multiple and remainder of the division, zero division of numbers floating point and associativity of three elements in the sum and multiplication. The first two examples reflect data invalid in overflow, to verify the error rate was plotted a comparative chart, already for the third case, there is a same operator that generates different results depending of the language it has been implemented, the proposed solution for this case is a table comparing them by classifying them. The results were 50% chance of the function of the mean return an invalid value while in the case of mmc were 31%. The last two problems work with floating point overflow, the fourth problem being referring to division by zero and their respective values congruent to it. In this problem it was verified than computers that use 32 textit bit archiving, this value is congruent to zero when implemented in code, such as body mass index (𝐼𝑀𝐶 = 𝑓𝑟𝑎𝑐𝑚ℎ2 ) when ℎ = 16. Lastly, and Not least, the associativity problem in addition and multiplication of three elements. That problem reports the sum of three decimal numbers results in different values depending on the order in which were willing. This same scenario happens in three floating point numbers when multiplied with 38.8% chance of invalid results, while in total the chance is 36.1%.A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta.info:eu-repo/semantics/openAccessComputadoresProgramação (Computadores)SemânticaEngenharia de softwareIdentificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemáticainfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesis2021-01-19T12:13:05Z2021-01-19T12:13:05Z2019-12-13porreponame:Biblioteca Digital de Monografias da UnBinstname:Universidade de Brasília (UnB)instacron:UNBLICENSElicense.txtlicense.txttext/plain1817http://bdm.unb.br/xmlui/bitstream/10483/26356/2/license.txt21554873e56ad8ddc69c092699b98f95MD52ORIGINAL2019_JulianaDoCoutoAlmeida_tcc.pdf2019_JulianaDoCoutoAlmeida_tcc.pdfapplication/pdf793178http://bdm.unb.br/xmlui/bitstream/10483/26356/1/2019_JulianaDoCoutoAlmeida_tcc.pdf1bbc948967881b8658e8b5a6319923f1MD5110483/263562021-01-19 10:13:05.395oai:bdm.unb.br:10483/26356w4kgbmVjZXNzw6FyaW8gY29uY29yZGFyIGNvbSBhIGxpY2Vuw6dhIGRlIGRpc3RyaWJ1acOnw6NvIG7Do28tZXhjbHVzaXZhLAphbnRlcyBxdWUgbyBkb2N1bWVudG8gcG9zc2EgYXBhcmVjZXIgbmEgQmlibGlvdGVjYSBEaWdpdGFsIGRhIFByb2R1w6fDo28gCkRpc2NlbnRlIGRhIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEuIFBvciBmYXZvciwgbGVpYSBhCmxpY2Vuw6dhIGF0ZW50YW1lbnRlLiBDYXNvIG5lY2Vzc2l0ZSBkZSBhbGd1bSBlc2NsYXJlY2ltZW50byBlbnRyZSBlbQpjb250YXRvIGF0cmF2w6lzIGRlOiBiZG1AYmNlLnVuYi5iciBvdSAzMTA3LTI2ODcuCgpMSUNFTsOHQSBERSBESVNUUklCVUnDh8ODTyBOw4NPLUVYQ0xVU0lWQQoKQW8gYXNzaW5hciBlIGVudHJlZ2FyIGVzdGEgbGljZW7Dp2EsIG8vYSBTci4vU3JhLiAoYXV0b3Igb3UgZGV0ZW50b3IgZG9zCmRpcmVpdG9zIGRlIGF1dG9yKToKCmEpIENvbmNlZGUgw6AgVW5pdmVyc2lkYWRlIGRlIEJyYXPDrWxpYSBvIGRpcmVpdG8gbsOjby1leGNsdXNpdm8gZGUKcmVwcm9kdXppciwgY29udmVydGVyIChjb21vIGRlZmluaWRvIGFiYWl4byksIGNvbXVuaWNhciBlL291CmRpc3RyaWJ1aXIgbyBkb2N1bWVudG8gZW50cmVndWUgKGluY2x1aW5kbyBvIHJlc3Vtby9hYnN0cmFjdCkgZW0KZm9ybWF0byBkaWdpdGFsIG91IGltcHJlc3NvIGUgZW0gcXVhbHF1ZXIgbWVpby4KCmIpIERlY2xhcmEgcXVlIG8gZG9jdW1lbnRvIGVudHJlZ3VlIMOpIHNldSB0cmFiYWxobyBvcmlnaW5hbCwgZSBxdWUKZGV0w6ltIG8gZGlyZWl0byBkZSBjb25jZWRlciBvcyBkaXJlaXRvcyBjb250aWRvcyBuZXN0YSBsaWNlbsOnYS4gRGVjbGFyYQp0YW1iw6ltIHF1ZSBhIGVudHJlZ2EgZG8gZG9jdW1lbnRvIG7Do28gaW5mcmluZ2UsIHRhbnRvIHF1YW50byBsaGUgw6kKcG9zc8OtdmVsIHNhYmVyLCBvcyBkaXJlaXRvcyBkZSBxdWFscXVlciBvdXRyYSBwZXNzb2Egb3UgZW50aWRhZGUuCgpjKSBTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSBjb250w6ltIG1hdGVyaWFsIGRvIHF1YWwgbsOjbyBkZXTDqW0gb3MKZGlyZWl0b3MgZGUgYXV0b3IsIGRlY2xhcmEgcXVlIG9idGV2ZSBhdXRvcml6YcOnw6NvIGRvIGRldGVudG9yIGRvcwpkaXJlaXRvcyBkZSBhdXRvciBwYXJhIGNvbmNlZGVyIMOgIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEgb3MgZGlyZWl0b3MKcmVxdWVyaWRvcyBwb3IgZXN0YSBsaWNlbsOnYSwgZSBxdWUgZXNzZSBtYXRlcmlhbCBjdWpvcyBkaXJlaXRvcyBzw6NvIGRlCnRlcmNlaXJvcyBlc3TDoSBjbGFyYW1lbnRlIGlkZW50aWZpY2FkbyBlIHJlY29uaGVjaWRvIG5vIHRleHRvIG91CmNvbnRlw7pkbyBkbyBkb2N1bWVudG8gZW50cmVndWUuCgpTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSDDqSBiYXNlYWRvIGVtIHRyYWJhbGhvIGZpbmFuY2lhZG8gb3UgYXBvaWFkbwpwb3Igb3V0cmEgaW5zdGl0dWnDp8OjbyBxdWUgbsOjbyBhIFVuaXZlcnNpZGFkZSBkZSBCcmFzw61saWEsIGRlY2xhcmEgcXVlCmN1bXByaXUgcXVhaXNxdWVyIG9icmlnYcOnw7VlcyBleGlnaWRhcyBwZWxvIHJlc3BlY3Rpdm8gY29udHJhdG8gb3UKYWNvcmRvLgoKQSBVbml2ZXJzaWRhZGUgZGUgQnJhc8OtbGlhIGlkZW50aWZpY2Fyw6EgY2xhcmFtZW50ZSBvKHMpIHNldSAocykgbm9tZSAocykKY29tbyBvIChzKSBhdXRvciAoZXMpIG91IGRldGVudG9yIChlcykgZG9zIGRpcmVpdG9zIGRvIGRvY3VtZW50bwplbnRyZWd1ZSwgZSBuw6NvIGZhcsOhIHF1YWxxdWVyIGFsdGVyYcOnw6NvLCBwYXJhIGFsw6ltIGRhcyBwZXJtaXRpZGFzIHBvcgplc3RhIGxpY2Vuw6dhLgo=Biblioteca Digital de Monografiahttps://bdm.unb.br/PUBhttp://bdm.unb.br/oai/requestbdm@bce.unb.br||patricia@bce.unb.bropendoar:115712021-01-19T12:13:05Biblioteca Digital de Monografias da UnB - Universidade de Brasília (UnB)false
dc.title.pt_BR.fl_str_mv Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
title Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
spellingShingle Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
Almeida, Julliana do Couto
Computadores
Programação (Computadores)
Semântica
Engenharia de software
title_short Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
title_full Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
title_fullStr Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
title_full_unstemmed Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
title_sort Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática
author Almeida, Julliana do Couto
author_facet Almeida, Julliana do Couto
author_role author
dc.contributor.author.fl_str_mv Almeida, Julliana do Couto
dc.contributor.advisor1.fl_str_mv Costa Júnior, Edson Alves da
contributor_str_mv Costa Júnior, Edson Alves da
dc.subject.keyword.pt_BR.fl_str_mv Computadores
Programação (Computadores)
Semântica
Engenharia de software
topic Computadores
Programação (Computadores)
Semântica
Engenharia de software
description Trabalho de Conclusão de Curso (graduação)–Universidade de Brasília, Faculdade UnB Gama, 2019.
publishDate 2019
dc.date.submitted.none.fl_str_mv 2019-12-13
dc.date.accessioned.fl_str_mv 2021-01-19T12:13:05Z
dc.date.available.fl_str_mv 2021-01-19T12:13:05Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv ALMEIDA, Julliana do Couto. Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática. 2019. 60 f. il. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Software)–Universidade de Brasília, Gama-DF, 2019.
dc.identifier.uri.fl_str_mv https://bdm.unb.br/handle/10483/26356
identifier_str_mv ALMEIDA, Julliana do Couto. Identificação de erros semânticos em código-fonte oriundos da representação numérica em computadores e em matemática. 2019. 60 f. il. Trabalho de Conclusão de Curso (Bacharelado em Engenharia de Software)–Universidade de Brasília, Gama-DF, 2019.
url https://bdm.unb.br/handle/10483/26356
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Monografias da UnB
instname:Universidade de Brasília (UnB)
instacron:UNB
instname_str Universidade de Brasília (UnB)
instacron_str UNB
institution UNB
reponame_str Biblioteca Digital de Monografias da UnB
collection Biblioteca Digital de Monografias da UnB
bitstream.url.fl_str_mv http://bdm.unb.br/xmlui/bitstream/10483/26356/2/license.txt
http://bdm.unb.br/xmlui/bitstream/10483/26356/1/2019_JulianaDoCoutoAlmeida_tcc.pdf
bitstream.checksum.fl_str_mv 21554873e56ad8ddc69c092699b98f95
1bbc948967881b8658e8b5a6319923f1
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Monografias da UnB - Universidade de Brasília (UnB)
repository.mail.fl_str_mv bdm@bce.unb.br||patricia@bce.unb.br
_version_ 1801493138448056320