Подправить программу быстрого возведения в степень - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Нужно написать программу бинарного возведения в степень. Точнее подправить работу с файлами. Программа должна брать из файла данные и записывать их туда. Сам код:
#include <stdio.h>
 
int main(void){
    FILE *file;
    printf("Otkritie faila: ");
    file = fopen("file.txt", "w+");
    if (file == NULL) printf("oshibka\n");
    else printf("done\n");
    int a, n;
    //чтение из потока a и n//
    printf("%d\n", binpow(a, n));
    //запись в файл возвращенное значение//
}
 
int binpow(int a, int n) {
        if (n == 0)
            return 1;
        if (n % 2 == 1)
            return binpow(a, n - 1) * a;
        else {
            int b = binpow(a, n / 2);
            return b * b;
        }
    }
Как я понимаю чтением из потока занимаются функции fgets (она записывает в массив, я её не хочу использовать) и fgetc (которая читает 1 символ). В файле будут записаны данные число и степень через пробел. Как Возможно ли считать 2 символа с помощью fgetc? Записывать в файл я думаю нужно через fputc. Заранее спасибо за ответ.

Решение задачи: «Подправить программу быстрого возведения в степень»

textual
Листинг программы
fscanf(file1, "%d%d", &a, &n); & потерял

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.929 из 5
Похожие ответы