1. Caro Visitante, por que não gastar alguns segundos e criar uma Conta no Fórum Valinor? Desta forma, além de não ver este aviso novamente, poderá participar de nossa comunidade, inserir suas opiniões e sugestões, fazendo parte deste que é um maiores Fóruns de Discussão do Brasil! Aproveite e cadastre-se já!

Dismiss Notice
Visitante, junte-se ao Grupo de Discussão da Valinor no Telegram! Basta clicar AQUI. No WhatsApp é AQUI. Estes grupos tem como objetivo principal discutir, conversar e tirar dúvidas sobre as obras de J. R. R. Tolkien (sejam os livros ou obras derivadas como os filmes)

Duvidas de linguagens de programação

Tópico em 'Atualidades e Generalidades' iniciado por Kementari, 23 Mar 2003.

  1. Kementari

    Kementari É só marca do fogão!

    Eh legal um topico pras pessoas postarem algumas duvidas sobre linguagens, ou qlqer coisa.
    Minha duvida: Tem como se colocar um comando em JS num hipertexto?
     
  2. black_pilot

    black_pilot Usuário

    Hum, desculpa Kementari, mas eu so um leso em JS.

    Tenho uma dúvida!
    Alguem sabe como atualizar os dados de uma tabela de um DB (acess) em ASP sem usar instrução SQL? "UPDATE XXXX SET ..."
    Eh que o burrinho aqui colocou alguns campos do DB com um "?" e as instruções SQL pelo jeito não aceitam isso...
    Ajudem-me!
     
  3. Gildor

    Gildor Usuário

    Gostei do tópico. 8-)

    Como assim? Well, se for pra chara uma janelinha de alerta dentro do código, é simples. É só escrever, no ponto onde você quiser, algo como:
    Código:
    <script>alert('aqui!');</script>
    Você pode usar ADO. Depois de abrir um recordset com a tabela, basta atribuir novos valores pra os campos
    Código:
    objRS.Open
    objRS("PrimeiroNome")= strPrimeiroNome
    objRS("SegundoNome")= strSegundoNome <br>
    objRS.Update 
    
    :wink:
     
  4. black_pilot

    black_pilot Usuário

    Engraçado, fiz isso! Abri o recordset normalmente (Select ...From... Where...)
    e coloquei todos os campos como vc fez ai (a ex daquele seu "<br>" que eu nao entendi por que diabos apareceu ali!). Mas, nao me lembro do erro direito (to fora de casa, nem da pra fazer de novo), deu isso: "O objeto não aceita tal propriedade". ou algo parecido.
    Qdo chegar em casa eu confiro a msg.
     
  5. Gildor

    Gildor Usuário

    Isso aí é culpa do cursor que você usou pra abrir o recordset. Altera ele pra OpenStatic que esse código aí funciona. 8-)
     
  6. Dúvida tosca em PHP

    como eu faço para usar a funçao similar_text?

    Código:
    $num = similar_text ("text", "testando", &$porc);
    
    $porc é a variavel com o resultado?
     
  7. black_pilot

    black_pilot Usuário

    ESSA EH URGENTE !!!!! Prum trabalho pra quarta feira:

    Como eu contabilizo os ciclos de CPU (de clock) em C???? Como meu professor falar: "Contar os ticks do clock". Como eu faco isso? Em C ou C++ (preferencia ao C).
    Por favor respondam!!!



    Ps.: Gildor, ainda nao deu pra eu testar o que vc me disse, de qq forma obrigado!
     
  8. Cildraemoth

    Cildraemoth Usuário

    Função clock().
     
  9. black_pilot

    black_pilot Usuário

    Claro que nao!!! QUal seria a graca???
    Soh uma pergunta, qual a biblioteca disso? Tem no "Turbo C++"? (aquele em DOS, da Borland).

    o codigo seria mais ou menos assim?
    Código:
    inicio = clock();
    
    // codigo //
    
    fim = clock();
    ciclo = fim - inicio;
    
    Seria assim??
     
  10. Cildraemoth

    Cildraemoth Usuário

    Faz parte da espeficação ANSI e está na bibliteca padrão. Qualquer compilador que se preze segue o padrão ANSI.


    Bem, se eu disser exatamente como faz, eu vou estar fazendo a sua lição de casa. :-) :mrgreen:
     
  11. black_pilot

    black_pilot Usuário

    pelo jeito nao eh assim... hahaha
    Tudo bem, a minha licao de casa nao eh diretamente relacionada ao ciclo de clock, mas o help do TC++ deve dar referencia a essa funcao...
     
  12. Mentor

    Mentor Usuário

    Intercepta a interrupção do system timer tick, é a INT 1C :twisted:

    O que? Não imagina o que é "interceptar", "system timer" ou "INT 1C"... Ah, então usa a função clock() mesmo... :mrgreen:
     
  13. black_pilot

    black_pilot Usuário

    tenho a impressao que esse post nao me acrescentou em nada...


    Ah, soh uma coisa, essa funcao nao funcionaria mto bem num sistema multiprogramavel neh? Jah que ela nao seria unica na ucp?

    --- Editei aqui ---

    Olha soh o que eu fiz:
    Código:
    void main (void)
    {
             clock_t inicio, fim;
    
    // codigo nao importante aqui \\
    	inicio = clock();
    	heap(&vetor);
    	fim = clock();
    	puts("Vetor ordenado!");
    	fim = fim-inicio;
    	printf("Ciclos de cpu usados: %d\n",(fim-inicio));
    
    // codigo nao importante aqui \\
    
    }
    
    Soh que nesse printf, ele me imprime zero, jah coloquei no "watch" pra ver qual o valor que as variaveis estao antes da impressao, e elas tem valores diferentes
     
  14. Mentor

    Mentor Usuário

    Que pena. Não ensinam mais aos programadores de hoje em dia o que está acontecendo sob as chamadas ao sistema, por que se ensinassem, eles já responderiam à questão:

    Você quer dizer multitarefa? Continuando... o que ocorre na chamada à essa função, é que ela lê uma variável do sistema que guarda os ticks, independente do que está rodando, já que é uma interrupção (acho que é a INT8) que a atualiza. A contagem não depende de quantos threads estão rodando.
    A INT1C é interceptada se quisermos, por exemplo, contar esses ticks, sem precisar chamar a função clock().



    Talvez o problema seja que você calcula quantos ciclos foram usados na linha fim = fim-inicio, e na chamada ao printf passa como parâmetro (fim-inicio). Dava pra por no printf só:
    Código:
    printf("Ciclos de cpu usados: %d\n",fim);
    
    Se bem que eu sugiro que você crie outra variável, por exemplo 'Ciclos', para guardar o resultado, pois fica mais fácil pra outra pessoa, como o professor, entender o que está acontecendo. Outra coisa, talvez os Ciclos não sejam um inteiro, mas sim um LONG... Tem que ver a definição de clock_t.

    Código:
    ...
    	Ciclos = fim-inicio;
    	printf("Ciclos de cpu usados: %d\n",Ciclos);
    ...
    
    E fica mais fácil para você mesmo, pois daqui a algum tempo já vai esquecer o que tinha feito. Então também lembre de deixar o código todo comentado! :wink:


    PS: Vai dar tempo de terminar pra quarta-feira? :o?:
     
  15. black_pilot

    black_pilot Usuário

    Hum ah, eu to no terceiro periodo, que perido eles normalmente ensinam isso??? hehe

    Multitarefa e multiprogramavel sao a mesma coisa nao?
    Errr ah, tem como vc me dizer como se faz isso? hehe

    PUTZ!!! Desculpa ae, eh que eu mudei o codigo pra passar pra cah, pq eu pensei que eu tinha feito alguma experiencia pra ver se dava certo. Meu printf tah como o seu e continua dando erro...

    Eh, isso pode ser, no help, ele passa pro printf que um %f pra imprimir a diferenca entre os dois, achei estranho mas tentei, soh que o compilador da erro, dizendo que o tipo eh incompativel...

    Acho que sim, tipo, a heapsort tah pronta, ta tudo pronto, soh precisa documentar e preparar um grafico relacionando o tamanho da lista a ser ordenada com os ciclos de clock.... Acho que da.
     
  16. Mentor

    Mentor Usuário

    Eu dei uma olhada no help do TC, e é o seguinte, os ticks são contados a partir do início do programa. Num programa teste, provavelmente tudo ocorre muito rápido, e não dá tempo de ter muitos ticks. Tente rodar esse exemplo:
    Código:
    #include <stdio.h>
    #include <time.h>
    #include <dos.h>
    #include <conio.h>
    
    void main(){
    	clock_t inicio;
    	clock_t fim;
    	clock_t Ciclos;
    
    	inicio = clock();
    	printf("Aguardando...\n");
    	getch();
    	fim = clock();
    
    	Ciclos = fim - inicio;
    	printf("Ticks por segundo: %f\n",CLK_TCK);
    	printf("Inicio: %ld\n",inicio);
    	printf("Fim   : %ld\n",fim);
    	printf("Ciclos: %ld\n",Ciclos);
    	printf("Tempo : %f segundos\n",Ciclos/CLK_TCK);
    	getch();
    }
    Ele começa a contar o tempo ao entrar no programa, e fica aguardando você teclar algo. Então pega os ticks, e calcula... Você pode contar mentalmente o tempo, e ver se bate.
     
  17. black_pilot

    black_pilot Usuário

    to enchando o saco com isso...

    Blz, tendi, soh que a minha "inicio" e a minha "fim" tem o mesmo valor no ciclo. Soh que eu reparei (diga se eu to errado) que os valores dessas variaveis estao em ordem de grandeza, certo? Tem como eu pegar o valor real disso?
     
  18. Mentor

    Mentor Usuário

    Daí só usando a função time() e afins (localtime, gmttime, etc.)
     
  19. Balbo

    Balbo Usuário

    Aí pessoal, tô com um problema com o ASP aqui. A parada basicamente é: eu tenho um código (esse aí abaixo mesmo) mas tá dando um erro:
    [Isso é só um exemplo hipotético, vocês vão entender o erro]
    Código:
    <%
    If (hour(time)>2) Then
      Response.Write("Olá")
    Elseif (hour(time)<=2) Then
      Response.Write("Alô")
    %>
    Esse é o erro:
    Código:
    Erro de compilação do Microsoft VBScript error '800a03f6' 
    
    'End' esperado
    
    [Nome do arquivo, linha do erro]
    O erro é sempre na última linha de comando. Descobri que só funciona se eu fizer assim:

    Código:
    <%If (hour(time)>2) Then Response.Write("Olá")%>
    <%If (hour(time)<=2) Then Response.Write("Alô")%>
    Ou seja, eu tenho que fechar a tag na mesma linha que eu abri, senão não funciona.

    Alguém tem alguma idéia?
     
  20. black_pilot

    black_pilot Usuário

    Poe no fim o end, assim:

    Código:
    <%
    If (hour(time)>2) Then
      Response.Write("Olá")
    Elseif (hour(time)<=2) Then
      Response.Write("Alô")
    end if   <----- poe isso.
    %>

    voce tem que dizer que o seu condicional "If" acabou, e vc faz isso com a "end if"

    Depois vc diz se foi...
     

Compartilhar