Помогите построить график
    
  ![]()  | 
Наши проекты:
 Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту  | 
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS | 
| [216.73.216.5] | 
 
 | 
		
  | 
| Страницы: (5) 1 [2] 3 4 ... Последняя » все ( Перейти к последнему сообщению ) | 
    Помогите построить график
    
  | 
         
         
         
          
           Сообщ.
           #16
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Воспользуйся такой функцией вместо MOD: 
        
      ![]() ![]() function FMod (a, b: Double): Double; begin    Result := a - b * Trunc(a / b) end;  | 
    
| 
         
         
         
          
           Сообщ.
           #17
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          С этим, кажется, разобралась - недаром ведь по заданию провежуток дан в мс, а не в с, значит, периоды тоже можно в мс делать, тогда они - целые... 
        
      Но он пишет ошибку - когда я пишу присвоить значению функции такое-то значение: I(t):=Im. Почему он это пишет? Как исправить?  | 
    
| 
         
         
         
          
           Сообщ.
           #18
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Потому что на Паскале так не пишут. Для этого есть зарезервированное слово Result.   
        
       | 
    
| 
         
         
         
          
           Сообщ.
           #19
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата Romtek @  Воспользуйся такой функцией вместо MOD: ![]() ![]() function FMod (a, b: Double): Double; begin    Result := a - b * Trunc(a / b) end; ясно. А что такое a,b и trunc?  | 
    
| 
         
         
         
          
           Сообщ.
           #20
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Пардон, пишется имя функции, а не Result. 
        
      Result только в Делфи или в FreePascal в режиме ObjFPC. Добавлено Цитата Prutvel @  А что такое a,b и trunc?  Trunc отсекает мантиссу вещественного числа. Trunc(-5.3) = -5 Trunc(5.3) = 5 Добавлено a, b - входные параметры для функции. Вроде бы как...   В чём, собственно, вопрос?  | 
    
| 
         
         
         
          
           Сообщ.
           #21
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата Romtek @  Пардон, пишется имя функции, а не Result. Так вот я и писала I(t):=Im, а он пишет ошибку...   И я написала, как Вы сказали - посмотрите, пожалуйста, так? Прикреплённый файл  глянь.jpg (40.88 Кбайт, скачиваний: 461)
		 | 
    
| 
         
         
         
          
           Сообщ.
           #22
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Prutvel 
        
      Копируйте текст программы из FPC. Edit -> Copy to Windows  | 
    
| 
         
         
         
          
           Сообщ.
           #23
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          function FMod (t,T3: double):double; 
        
      Const Im=0.57; L=0.1; tau=62; f1=5.37; f2=8.06; T1=186;T2=124; T3=310; begin if (t-T3*Trunc(t/T3))<tau then I(t):=Im; if ((t-T3*Trunc(t/T3))>=tau) and ((t-T3*Trunc(t/T3))<T1) then I(t):=-Im; if ((t-T3*Trunc(t/T3))>=T1) and ((t-T3*Trunc(t/T3))<(T1+tau)) then I(t):=Im; if (t-T3*Trunc(t/T3))>=(T1+tau)) and ((t-T3*Trunc(t/T3))<T3) then I(t):=-Im; end.  | 
    
| 
         
         
         
          
           Сообщ.
           #24
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата Prutvel @  Я написал только про имя. Если передаём и параметр, то получаем рекурсивный вызов функции. Но так как можно только получить результат рекурсии, а не присвоить ему значени, то получаешь ошибку.Так вот я и писала I(t):=Im, а он пишет ошибку... Убери параметр (t).  | 
    
| 
         
         
         
          
           Сообщ.
           #25
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Так компилируется, насколько верно записано - не знаю. 
        
      ![]() ![]() function FMod (a, b: Double): Double; begin    FMOD:= a - b * Trunc(a / b); end; Function i(t:Double): Double; Const   Im=0.57; L=0.1; tau=62; f1=5.37; f2=8.06; T1=186;T2=124; T3=310; begin   if fmod(t,T3)<tau then     i:=Im;   if (fmod(t,T3)>=tau) and (fmod(t,T3)<T1) then     I:=-Im;   if (fmod(t,T3)>=T1) and (fmod(t,T3)<(T1+tau)) then     I:=Im;   if (fmod(t,T3)>=T1+tau) and (fmod(t,T3)<T3) then     I:=-Im; end; begin end.  | 
    
| 
         
         
         
          
           Сообщ.
           #26
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          а как же мне тогда задавать интервалы?   
        
          | 
    
| 
         
         
         
          
           Сообщ.
           #27
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата Prutvel @  а как же мне тогда задавать интервалы?   Я подправил предыдущее сообщ. Проверьте.  | 
    
| 
         
         
         
          
           Сообщ.
           #28
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          пишет на последнем end ошибку Error while linking, подставляла readln, writeln - не помогает...   
        
       | 
    
| 
         
         
         
          
           Сообщ.
           #29
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Это когда предыдущие скомпилированные и запущенные программы не были закрыты. 
        
      Если они закрыты, надо завершить их процессы в Task Manager.  | 
    
| 
         
         
         
          
           Сообщ.
           #30
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          а где это?   
        
       |