Форум программистов, компьютерный форум CyberForum.ru

присваивание значения в цикле - C++

Восстановить пароль Регистрация
 
solomid
1 / 1 / 0
Регистрация: 22.09.2011
Сообщений: 86
08.10.2011, 18:20     присваивание значения в цикле #1
здрасти) вобщем необходимо что бы вот эта галимотья была в цикле
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
  printf("%.f",a);
  c= pow(a,2);
  d=c %modl;
  printf("%3.f",d);
  e= pow(d,2);
  f=e%modl;
  printf("%3.f",f);
  g = pow(f,2);
  h = g%modl;
  printf("%3.f",h);
  i=pow(h,2);
  j=i%modl;
  printf("%4.d\n",j);
я думал что-то типо вот такого
C++
1
2
3
4
5
6
7
8
  for(int i = 1;i < p;i++)
  {
    c = pow(a,2);
    d = c%modl;
    printf("%d\n",d);
    d==a;
 
  }
но,он ,естественно для умных и не понятно для меня, не работает. Прошу помощи.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Azazzelo
 Аватар для Azazzelo
4 / 4 / 1
Регистрация: 14.11.2010
Сообщений: 31
08.10.2011, 18:51     присваивание значения в цикле #2
Для чисел c,d,e,f и т.д создай массив, например arr[10] и работай с ним
P.s.
1.
C
1
d==a;
это сравнение а не присвоение
2. выкладывай хоть задание, из того что есть не сильно понятое что и зачем возводится в степени
solomid
1 / 1 / 0
Регистрация: 22.09.2011
Сообщений: 86
09.10.2011, 06:55  [ТС]     присваивание значения в цикле #3
вот программа, конечный результат ряд чисел.
вот для примера, запустить программу, ввести 3^16 mod 19 логарифмируем степень получаем 4, значит имеем ряд из пяти чисел 3 9 и т.д.,массив задал но он не выполняет то что ему предначертано.
пофиксите пожалуйста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include "stdafx.h"
#include <stdio.h>
#include <math.h>
#include <iostream>
using namespace std;
 
int main ()
{
    setlocale(LC_ALL,"Russian");
double p, result;
  float param,a,d,f,h;
  float arr[100];
  int  x,modl,c,Qa,e,g,i,j;
  printf("Введите параметры А Х и модуль\n");
  scanf("%d\n%d\n%d",&Qa,&x,&modl);
  printf("%d^%d mod%d\n",Qa,x,modl);
  printf("Пролагарифмируем степень\n");
  cin >> param;
  cout << endl;
  result = log (param);
  p = log(param)/log(2.0);
  printf("log2(%.lf)\n",p);
  scanf("%f",&a);
  
  for(int i = 1;i < p;i++)
  {
    
    arr[i] = pow(a,2);
    arr[i] = i%modl;
    printf("%.f\n",arr[i]);
    arr[i]=a;
 
  }
  /*
  printf("%.f",a);
  c= pow(a,2);
  d=c %modl;
  printf("%3.f",d);
  e= pow(d,2);
  f=e%modl;
  printf("%3.f",f);
  g = pow(f,2);
  h = g%modl;
  printf("%3.f",h);
  i=pow(h,2);
  j=i%modl;
  printf("%4.d\n",j);
  */
     return 0;
}
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
09.10.2011, 08:12     присваивание значения в цикле #4
C++
1
2
3
4
5
6
7
int a = ...;
int b = 0;
for( int i = 0; i < 4; ++i )
{
    a = a*a % modl;
    printf("%d\n", a);
}
Добавлено через 1 минуту
Цитата Сообщение от solomid Посмотреть сообщение
но он не выполняет то что ему предначертано
Ему предначертано хранить i%modl, что он и делает. Тяжкая у него судьбинушка.
solomid
1 / 1 / 0
Регистрация: 22.09.2011
Сообщений: 86
09.10.2011, 11:53  [ТС]     присваивание значения в цикле #5
вы даже не представляете какая судьба у других переменных
Спасибо большое

Добавлено через 2 часа 59 минут
Цитата Сообщение от Deviaphan Посмотреть сообщение
Ему предначертано хранить i%modl, что он и делает.
а вообще возможно это сделать через массив, чтобы скажем дальше использовать эти числа?
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
09.10.2011, 12:01     присваивание значения в цикле #6
C++
1
2
3
4
5
6
7
8
int a = ...;
int arr[4];
arr[0] = a*a%modl;
for( int i = 1; i < 4; ++i )
{
    arr[i] = arr[i-1]*arr[i-1] % modl;
    printf("%d\n", arr[i]);
}
Yandex
Объявления
09.10.2011, 12:01     присваивание значения в цикле
Ответ Создать тему
Опции темы

Текущее время: 16:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru