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

Неправильно считается произведение, начиная с n=5 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Даны натуральные числа N и M http://www.cyberforum.ru/cpp-beginners/thread1101489.html
Даны натуральные числа N и M.вывести на экран все числители числа N, которые одновременно являются делителем M.
C++ Удалить файл с указанной фразой в названии В общем, у нас есть файл "name_3435536362.txt". Символы "3435536362" у каждого пользователя свои. Нужно организовать удаление файла таким образом: удалить файл "name_*", где * - это указанные выше символы. То бишь, нужно удалить все файлы, в названии которых стоит "name_". Сам код удаления: if((p = fopen("D:/Program Files/name_3435536362.txt", "w"))== NULL) { puts( "\nФайл не... http://www.cyberforum.ru/cpp-beginners/thread1101456.html
Цифры данного четырехзначного числа N образуют строго возрастающую последовательность C++
Помогите пожалуйста. Только начинаю программировать и что-то у меня не особо выходит. цифры данного четырехзначного числа N образуют строго возрастающую последовательность. Решить нужно без условных операторов, чтобы выводило true/false using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication9 {
C++ Подсчитать сколько знаков препинания в данной строке
Помогите пожалуйста выполнить задачу: Вводится строка. Подсчитать сколько знаков препинания в данной строке. мой код: #include <iostream> using namespace std; int main() { char str; int a=0; cout<<"Enter text";
C++ Смена слов в файле http://www.cyberforum.ru/cpp-beginners/thread1101420.html
Написать программу, которая считывает текст из файла и выводит его на экран, меняя местами каждые два соседних слова
C++ Division by zero Проблема в функции, не могу понять где именно является деление на 0, чтобы исправить проблему. Код на С + + переписана из Делфи и видимо криво что-то получилось. // --------------------------------------------------------------------------- #include <vcl.h> #include <math.h> #include <stdio.h> #pragma hdrstop #include "Unit1.h" подробнее

Показать сообщение отдельно
НеСказочник
58 / 46 / 7
Регистрация: 12.11.2012
Сообщений: 339
Записей в блоге: 2
20.02.2014, 19:30     Неправильно считается произведение, начиная с n=5
А если это:

Цитата Сообщение от anna969 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
for (; n!=0 ; (i=i*3) )
  {
    k++ ;
    if(i<0)
      i=i*(-1);
    if (k%2==0)
      i=i*(-1);
    y=y*i;
    n--;
  }
и это:
Цитата Сообщение от anna969 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
for (; n!=0 ; (i=i*3))
   {
       k++;
       if (i<0)
         i=i*(-1);
     if (k%2==0)
         i=i*(-1);
     x=x+i;
     n--;
   }

заменить на это:

C++
1
2
3
4
5
6
7
int k = 1, y = 1;
 
for(int i = 0; i < n; i++)
{
     y = y1*k;
     k = -3*k;
}
и это:
C++
1
2
3
4
5
6
7
int k = 1, x = 0;
 
for(int i = 0; i < n; i++)
{
     x = x + k;
     k = -3*k;
}

По крайней мере отлаживать проще будет, а выполняют они то же самое:

1) В начале k=1;
2) Потом k=-3*1=-3;
3) Потом k=-3*(-3)=9;
4) Потом k=9*(-3)=-27;
...) И так далее.

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