Все для Sony Ericsson, патчи, эльфы, моддинг, прошивка
  
Логин: Пароль: Запомнить: Привет гость! Зарегистрируйся или авторизируйся для получения доп. возможностей!
Разделы
PDA версия сайта
TrackIDentify
Новости
Статьи
Файлы
Патчи
Патчи A2
Патчи db2020
Эльфы
Исходники эльфов
Wiki
Форум
Опросы
Обратная связь
Развернуть/Свернуть
 
Развернуть/Свернуть

Вопрос по С : О жизни : Форум : Для Sony Ericsson патчи эльфы моддинг прошивка
/  Список форумов
   /  О жизни
/  Вопрос по С
На печать 
Правила 


D3mon


Developer


Регистрация: 23.2.08
Сообщений: 1141
Репутация: 10348
Откуда: Краснодар




 
  #1 [14.11.09, 16:14] Вопрос по С   

 
Есть программка:

Код: 
#include <stdio.h>
#include <conio.h>
#define deg 3

unsigned int i, fn, gn;
double F[4], G[3];

main(void)
{
  fn = deg;
  gn = deg - 1;

  for (i = 0; i <= fn; i++)
  {
    F[i] = i * 2;
  }
    
  for (i = 0; i <= gn; i++)
  {
    G[i] = (i + 1) * F[i+1];
    printf(" G[%1.0f", i);
    printf("] = %3.1f,", G[i]);
  }
  
  getchar();
}

никак не могу понять, почему она в скобках пишет 0, а не значение i



Подскажите, пожалуйста.




Sony Xperia XZ3 Green
Sony Xperia Z3 Compact Orange
W995i SW-R1GA026
:(

MahmudS


Patchmaster


Регистрация: 3.12.07
Сообщений: 662
Репутация: 3103
Откуда: Черновцы.UA




 
  #2 [14.11.09, 16:22] Re: Вопрос по С   

 
Потому что оно целое, попробуй %d




iPhone 5S Neverlock 64gb iOS 8.4 + Jailbreak
C901 R1GA028 Ocean White
W715 R1GA030 Black

D3mon


Developer


Регистрация: 23.2.08
Сообщений: 1141
Репутация: 10348
Откуда: Краснодар




 
  #3 [14.11.09, 16:25] Re: Вопрос по С   

 
мде..... :oops: :lol:
Спасибо! 8-)

Еще, а как можно объеденить принты в один, а то у меня не получается? (

[ Редактировано D3mon в 14.11.09 16:29 ]




Sony Xperia XZ3 Green
Sony Xperia Z3 Compact Orange
W995i SW-R1GA026
:(

MahmudS


Patchmaster


Регистрация: 3.12.07
Сообщений: 662
Репутация: 3103
Откуда: Черновцы.UA




 
  #4 [14.11.09, 16:38] Re: Вопрос по С   

 
printf("G[%d] = %3.1f\n", i, G[i]); \n - переход на новую строку.




iPhone 5S Neverlock 64gb iOS 8.4 + Jailbreak
C901 R1GA028 Ocean White
W715 R1GA030 Black

D3mon


Developer


Регистрация: 23.2.08
Сообщений: 1141
Репутация: 10348
Откуда: Краснодар




 
  #5 [14.11.09, 16:42] Re: Вопрос по С   

 
ну про \n я знаю. Но он мне здесь не нужен :-)
Спасибо!!

p.s. если вдруг кому-то стало интересно, что это за программа, объясню..
Это код проги с использованием функции..

Код: 
#include <stdio.h>
#include <conio.h>
#define deg 3

void polydif(double *f, unsigned int fn, double *g, unsigned int gn)
{
  unsigned int i;
  
  gn = fn - 1;
  for (i = 0; i <= gn; i++)
  {
    *g++ = *++f * (i+1);
  }
}

unsigned int i, fn, gn;
double F[4], G[3];

main(void)
{
  fn = deg;
  gn = deg - 1;

  F[0] = 0;
  F[1] = 2;
  F[2] = 4;
  F[3] = 6;

  polydif(F, fn, G, gn);
   
  for (i = 0; i <= gn; i++)
  {
    printf("G[%d] = %3.2f  ", i, G[i]);
  }
  
  getchar();
}


f - коэффициенты многочлена степени fn, начинаю с 0-го..
g - коэффициенты многочлена, полученного после дифференцирования f и имеющего степень gn..


И тут же назрел еще один вопрос: эта моя функция записывает степень полученного многочлена в gn, а как сделать, чтобы ее можно было потом использовать в основной программе? Есть ли аналог ключа VAR в паскале?

[ Редактировано D3mon в 14.11.09 16:54 ]




Sony Xperia XZ3 Green
Sony Xperia Z3 Compact Orange
W995i SW-R1GA026
:(

MahmudS


Patchmaster


Регистрация: 3.12.07
Сообщений: 662
Репутация: 3103
Откуда: Черновцы.UA




 
  #6 [14.11.09, 19:10] Re: Вопрос по С   

 
В си просто пишешь int gn, вот и будет объявлена перемення. Если обьявишь сразу после инклудов и дефайнов (не внутри функций), она будет глобальной




iPhone 5S Neverlock 64gb iOS 8.4 + Jailbreak
C901 R1GA028 Ocean White
W715 R1GA030 Black

D3mon


Developer


Регистрация: 23.2.08
Сообщений: 1141
Репутация: 10348
Откуда: Краснодар




 
  #7 [14.11.09, 19:36] Re: Вопрос по С   

 
можеты меня не так понял, или я тебя 8-)
в главной программе я знаю только fn. В ходе работы функции появляется gn, в данном случае оно равно fn-1. как мне сделать, чтобы gn имела тоже значение после работы функции, что и в ней?




Sony Xperia XZ3 Green
Sony Xperia Z3 Compact Orange
W995i SW-R1GA026
:(

MahmudS


Patchmaster


Регистрация: 3.12.07
Сообщений: 662
Репутация: 3103
Откуда: Черновцы.UA




 
  #8 [14.11.09, 21:30] Re: Вопрос по С   

 
Переменная gn у тебя описана дважды: в функции и в самой программе. Во втором случае она глобальная, т.е. на всю программу. А функция работает с той переменной gn, какую ей передали. Поэтому из описания функции надо gn убрать, пусть она работает с глобальной переменной. Другой вариант - в описании переменной в функции написать &gn, тогда функция будет работать с самой переменной, а не с ее копией




iPhone 5S Neverlock 64gb iOS 8.4 + Jailbreak
C901 R1GA028 Ocean White
W715 R1GA030 Black

noa


Expert


Регистрация: 31.8.07
Сообщений: 740
Репутация: 259
Откуда: Москва - Подольск




 
  #9 [15.11.09, 11:31] Re: Вопрос по С   

 
D3mon, а разве сложно найти литературу в которой это все описано? Все что ты спросил - азы, разбираются в самом начале любой нормальной книги.




This is the end, my only friend, the end...



  • Поиск
  • Права
Вы не можете начинать темы.
Вы не можете редактировать свои сообщения.
Вы не можете создавать опросы.
Вы не можете вкладывать файлы в сообщения.
Вы не можете отвечать на сообщения.
Вы не можете удалять свои сообщения.
Вы не можете голосовать.

Главная Новости Статьи Файлы Патчи Форум Опросы PDA
- Генерация страницы: 0.12 секунд | 10 Запросов | HTML: 43.11 КБ -