·
Cursos Gerais ·
Linguagens de Programação
Send your question to AI and receive an answer instantly
Recommended for you
1
Correcao-de-Bugs-e-Compilacao-WebAssembly-do-Projeto-ABCG
Linguagens de Programação
UFABC
4
Lista de Exercícios de Programação em Python - Busca de Soma em Vetor e Soma Divergente Modificada
Linguagens de Programação
UFABC
4
Exercicios Resolvidos Matrizes Calculo Medias Minimos e Somas
Linguagens de Programação
UFABC
1
Exercícios de Python - Cálculo de Distâncias e Calendário
Linguagens de Programação
UFABC
1
Correcao de Codigo e Geracao de WebAssembly para Projeto ABCG
Linguagens de Programação
UFABC
5
Documentação do Projeto: Configuração e Execução do Servidor e Cliente
Linguagens de Programação
UFABC
2
NPROG SIS IA4 - Implementacao de Construtores na Classe Motocicleta
Linguagens de Programação
UFABC
4
Lista de Exercícios sobre Matrizes em Python - Verificação de Propriedades e Elementos Oeste Menores
Linguagens de Programação
UFABC
1
Relogio Digital em Assembly - Implementacao com Gerador de Sinais e Displays
Linguagens de Programação
UFABC
2
Semiparticionado de Vetor Impar - Implementacao em C
Linguagens de Programação
UFABC
Preview text
Faça um programa que leia um número inteiro e execute um comando sobre este Não é necessário o uso de funções que operem sobre strings Aliás não recomendo usar strings para resolver esta pergunta Note que a leitura da entrada deve ser apenas UM inteiro Entrada Faça um programa que leia um número N e uma string C Se a string C for igual TROCA ou INSERE então o seu programa dever ler mais dois inteiros I e D onde 0 D 9 nesta respectiva ordem Saída O seu programa deve imprimir o número M obtido de acordo com as seguintes regras Se C é igual à TROCA então M é o número obtido pela troca do Iésimo dígito da direita para à esquerda de N pelo dígito D Se C é igual à APAGA então M é o número obtido pela remoção do Iésimo dígito da direita para à esquerda de N Se C é igual à INSERE então M é o número obtido pela inserção do dígito D à esquerda do Iésimo dígito da direita para à esquerda de N Exemplos Entrada Saída 1534 TROCA 3 0 1034 1534 APAGA 2 154 Resolução função para contar a quantidade de digitos no numero def quantdigitosnumero cont 0 a lógica é verificar quantas vezes o número é divisivel por 10 o contador acumula cada vez e retorna a quantidade de algarismos while numero 1 numero numero10 cont 1 return cont função que apaga def apaganumero i cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i1 m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posiçao i dessa form a adiciona mais um para pular o valor dessa posição dig 1 continua a somatória das multiplicações de potência considerand o uma potencia a menos while dig cont m numero10dig10 10dig1 dig 1 return m função que troca def trocanumero i D cont m 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente quando o valor de dig for equivalente a posição desejada i a condição de soma é alterada trocando pelo valor D for dig in range0 cont if dig 1 i m D 10dig else m numero10dig10 10dig return m função que insere def inserenumero i D cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posiçao i dessa form a insere o valor D e sua respectiva potência m D 10dig dig 1 while dig cont1 é necessário reduzir 1 do valor do dig para o calculo do alga rismo visto que acrescentamos mais um no somatório total m numero10dig110 10dig dig 1 return m leitura do inteiro N N intinputEntre com o número leitura da string C C strinputEntre com a palavra upper variável que irá guardar a quantidade de algarismos no número cont quantdigitosN condição para o programa ler mais inteiros if C APAGA printfO número inserido tem cont algarismo portanto a posiçã o deve estar entre 1 e cont I intinputEntre com o número da posição que deseja apagar chama a função apaga para realizar a operação e imprimir o resul tado printfm apagaN I cont elif C TROCA condição de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posi ção deve estar entre 1 e cont I intinputEntre com o número da posição que deseja trocar printO valor a ser trocado deve ser entre 0 e 9 D intinputEntre com o número que deseja trocar chama a função troca para realizar a operação e imprimir o res ultado printfm trocaN I D cont elif C INSERE condição de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posi ção deve estar entre 1 e cont I intinputEntre com o número da posição que deseja inserir printO valor a ser inserido deve ser entre 0 e 9 D intinputEntre com o número que deseja inserir chama a função insere para realizar a operação e imprimir o re sultado printfm insereN I D cont função para contar a quantidade de digitos no numero def quantdigitosnumero cont 0 a lógica é verificar quantas vezes o número é divisivel por 10 o contador acumula cad while numero 1 numero numero10 cont 1 return cont função que apaga def apaganumero i cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i1 m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posição i dessa forma adiciona mais um par dig 1 continua a somatória das multiplicaçōes de potência considerando uma potencia a menos while dig cont m numero10dig10 10dig1 dig 1 return m função que troca def trocanumero i D cont m 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente quando o valor de dig for equivalente a posição desejada i a condiçāo de soma é alte for dig in range0 cont if dig 1 i m D 10dig else m numero10dig10 10dig return m função que insere def inserenumero i D cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posição i dessa forma insere o valor D e su m D 10dig dig 1 while dig cont1 é necessário reduzir 1 do valor do dig para o calculo do algarismo visto que acresc m numero10dig110 10dig dig 1 return m leitura do inteiro N N intinputEntre com o número leitura da string C C strinputEntre com a palavra upper variável que irá guardar a quantidade de algarismos no número cont quantdigitosN condiçāo para o programa ler mais inteiros if C APAGA printfO número inserido tem cont algarismo portanto a posição deve estar entre 1 e I intinputEntre com o número da posição que deseja apagar chama a funçāo apaga para realizar a operaçāo e imprimir o resultado printfm apagaN I cont elif C TROCA condiçāo de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posição deve estar entre 1 I intinputEntre com o número da posição que deseja trocar printO valor a ser trocado deve ser entre 0 e 9 D intinputEntre com o número que deseja trocar chama a funçāo troca para realizar a operaçāo e imprimir o resultado printfm trocaN I D cont elif C INSERE condiçāo de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posição deve estar entre 1 I intinputEntre com o número da posição que deseja inserir printO valor a ser inserido deve ser entre 0 e 9 D intinputEntre com o número que deseja inserir chama a funçāo insere para realizar a operaçāo e imprimir o resultado printfm insereN I D cont Produtos pagos do Colab Cancele os contratos aqui 20 s concluído às 1653
Send your question to AI and receive an answer instantly
Recommended for you
1
Correcao-de-Bugs-e-Compilacao-WebAssembly-do-Projeto-ABCG
Linguagens de Programação
UFABC
4
Lista de Exercícios de Programação em Python - Busca de Soma em Vetor e Soma Divergente Modificada
Linguagens de Programação
UFABC
4
Exercicios Resolvidos Matrizes Calculo Medias Minimos e Somas
Linguagens de Programação
UFABC
1
Exercícios de Python - Cálculo de Distâncias e Calendário
Linguagens de Programação
UFABC
1
Correcao de Codigo e Geracao de WebAssembly para Projeto ABCG
Linguagens de Programação
UFABC
5
Documentação do Projeto: Configuração e Execução do Servidor e Cliente
Linguagens de Programação
UFABC
2
NPROG SIS IA4 - Implementacao de Construtores na Classe Motocicleta
Linguagens de Programação
UFABC
4
Lista de Exercícios sobre Matrizes em Python - Verificação de Propriedades e Elementos Oeste Menores
Linguagens de Programação
UFABC
1
Relogio Digital em Assembly - Implementacao com Gerador de Sinais e Displays
Linguagens de Programação
UFABC
2
Semiparticionado de Vetor Impar - Implementacao em C
Linguagens de Programação
UFABC
Preview text
Faça um programa que leia um número inteiro e execute um comando sobre este Não é necessário o uso de funções que operem sobre strings Aliás não recomendo usar strings para resolver esta pergunta Note que a leitura da entrada deve ser apenas UM inteiro Entrada Faça um programa que leia um número N e uma string C Se a string C for igual TROCA ou INSERE então o seu programa dever ler mais dois inteiros I e D onde 0 D 9 nesta respectiva ordem Saída O seu programa deve imprimir o número M obtido de acordo com as seguintes regras Se C é igual à TROCA então M é o número obtido pela troca do Iésimo dígito da direita para à esquerda de N pelo dígito D Se C é igual à APAGA então M é o número obtido pela remoção do Iésimo dígito da direita para à esquerda de N Se C é igual à INSERE então M é o número obtido pela inserção do dígito D à esquerda do Iésimo dígito da direita para à esquerda de N Exemplos Entrada Saída 1534 TROCA 3 0 1034 1534 APAGA 2 154 Resolução função para contar a quantidade de digitos no numero def quantdigitosnumero cont 0 a lógica é verificar quantas vezes o número é divisivel por 10 o contador acumula cada vez e retorna a quantidade de algarismos while numero 1 numero numero10 cont 1 return cont função que apaga def apaganumero i cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i1 m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posiçao i dessa form a adiciona mais um para pular o valor dessa posição dig 1 continua a somatória das multiplicações de potência considerand o uma potencia a menos while dig cont m numero10dig10 10dig1 dig 1 return m função que troca def trocanumero i D cont m 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente quando o valor de dig for equivalente a posição desejada i a condição de soma é alterada trocando pelo valor D for dig in range0 cont if dig 1 i m D 10dig else m numero10dig10 10dig return m função que insere def inserenumero i D cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posiçao i dessa form a insere o valor D e sua respectiva potência m D 10dig dig 1 while dig cont1 é necessário reduzir 1 do valor do dig para o calculo do alga rismo visto que acrescentamos mais um no somatório total m numero10dig110 10dig dig 1 return m leitura do inteiro N N intinputEntre com o número leitura da string C C strinputEntre com a palavra upper variável que irá guardar a quantidade de algarismos no número cont quantdigitosN condição para o programa ler mais inteiros if C APAGA printfO número inserido tem cont algarismo portanto a posiçã o deve estar entre 1 e cont I intinputEntre com o número da posição que deseja apagar chama a função apaga para realizar a operação e imprimir o resul tado printfm apagaN I cont elif C TROCA condição de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posi ção deve estar entre 1 e cont I intinputEntre com o número da posição que deseja trocar printO valor a ser trocado deve ser entre 0 e 9 D intinputEntre com o número que deseja trocar chama a função troca para realizar a operação e imprimir o res ultado printfm trocaN I D cont elif C INSERE condição de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posi ção deve estar entre 1 e cont I intinputEntre com o número da posição que deseja inserir printO valor a ser inserido deve ser entre 0 e 9 D intinputEntre com o número que deseja inserir chama a função insere para realizar a operação e imprimir o re sultado printfm insereN I D cont função para contar a quantidade de digitos no numero def quantdigitosnumero cont 0 a lógica é verificar quantas vezes o número é divisivel por 10 o contador acumula cad while numero 1 numero numero10 cont 1 return cont função que apaga def apaganumero i cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i1 m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posição i dessa forma adiciona mais um par dig 1 continua a somatória das multiplicaçōes de potência considerando uma potencia a menos while dig cont m numero10dig10 10dig1 dig 1 return m função que troca def trocanumero i D cont m 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente quando o valor de dig for equivalente a posição desejada i a condiçāo de soma é alte for dig in range0 cont if dig 1 i m D 10dig else m numero10dig10 10dig return m função que insere def inserenumero i D cont m 0 dig 0 a função irá divir o numero em cada unidade e multiplicar pela potência equivalente while dig i m numero10dig10 10dig dig 1 o critério de parada é antes de chegar na posição i dessa forma insere o valor D e su m D 10dig dig 1 while dig cont1 é necessário reduzir 1 do valor do dig para o calculo do algarismo visto que acresc m numero10dig110 10dig dig 1 return m leitura do inteiro N N intinputEntre com o número leitura da string C C strinputEntre com a palavra upper variável que irá guardar a quantidade de algarismos no número cont quantdigitosN condiçāo para o programa ler mais inteiros if C APAGA printfO número inserido tem cont algarismo portanto a posição deve estar entre 1 e I intinputEntre com o número da posição que deseja apagar chama a funçāo apaga para realizar a operaçāo e imprimir o resultado printfm apagaN I cont elif C TROCA condiçāo de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posição deve estar entre 1 I intinputEntre com o número da posição que deseja trocar printO valor a ser trocado deve ser entre 0 e 9 D intinputEntre com o número que deseja trocar chama a funçāo troca para realizar a operaçāo e imprimir o resultado printfm trocaN I D cont elif C INSERE condiçāo de tratamento para que não sejam aceitos valores fora desse intervalo D 1 while D 0 or D 9 printfO número inserido tem cont algarismo portanto a posição deve estar entre 1 I intinputEntre com o número da posição que deseja inserir printO valor a ser inserido deve ser entre 0 e 9 D intinputEntre com o número que deseja inserir chama a funçāo insere para realizar a operaçāo e imprimir o resultado printfm insereN I D cont Produtos pagos do Colab Cancele os contratos aqui 20 s concluído às 1653