Real Vim ninjas count every keystroke - do you?

Pick a challenge, fire up Vim, and show us what you got.

Changelog, Rules & FAQ, updates: @vimgolf, RSS.

Your VimGolf key: please sign in

$ gem install vimgolf
$ vimgolf setup
$ vimgolf put 59553bd164628d0009000038

Missing Library and a Typo

I forgot to add a c library, please add it for me. Also I'm bad at typing so fix my typo too.

Start file
#define MIN_NUMBER 1
#define MAX_NUMBER 100
#include <stdio.h>
#include <time.h>
#include <stdlib.h>

int getGuess(){
    int c;
    int guess = 0;

    while(guess < MIN_NUMBER || guess > MAX_NUMBER){
        printf("Guess: ");
        scanf("%d", &guess);

        while((c = getchar()) != '\n' && c != EOF);
    }

    return guess;
}

int main(){
    srand(time(NULL));
    int number = rand()%(MAX_NUMBER-MIN_NUMBER+1)+MIN_NUMBER;

    printf("Let's start a game.\n");
    printf("I've picked a number between %d and %d\n",MIN_NUMBER,MAX_NUMBER);
    printf("Guess what it is and I'll tell you \n");
    printf("if it's higher or lower.\n");
    printf("You win if you guess it in 7 turns or less\n\n");

    int turn;
    for(turn = 0; turn < 7; turn++){
        int guess = getGuess();
        assert(guess>=MIN_NUMBER && guess<=MAX_NUMBER);

        if(guess < number){
            printf("Higher\n\n");
        }else if(guess > number){
            printf("Lower\n\n");
        }else{
            break;
        }
    }

    if(turn < 7)
        printf("\nYou Win!\n");
    else
        printf("You Lose the answer was %d.\n", number);

    return 0;
}
// I think I forgot to include the library assetr
End file
#define MIN_NUMBER 1
#define MAX_NUMBER 100
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <assert.h>

int getGuess(){
    int c;
    int guess = 0;

    while(guess < MIN_NUMBER || guess > MAX_NUMBER){
        printf("Guess: ");
        scanf("%d", &guess);

        while((c = getchar()) != '\n' && c != EOF);
    }

    return guess;
}

int main(){
    srand(time(NULL));
    int number = rand()%(MAX_NUMBER-MIN_NUMBER+1)+MIN_NUMBER;

    printf("Let's start a game.\n");
    printf("I've picked a number between %d and %d\n",MIN_NUMBER,MAX_NUMBER);
    printf("Guess what it is and I'll tell you \n");
    printf("if it's higher or lower.\n");
    printf("You win if you guess it in 7 turns or less\n\n");

    int turn;
    for(turn = 0; turn < 7; turn++){
        int guess = getGuess();
        assert(guess>=MIN_NUMBER && guess<=MAX_NUMBER);

        if(guess < number){
            printf("Higher\n\n");
        }else if(guess > number){
            printf("Lower\n\n");
        }else{
            break;
        }
    }

    if(turn < 7)
        printf("\nYou Win!\n");
    else
        printf("You Lose the answer was %d.\n", number);

    return 0;
}
// I think I forgot to include the library assert

View Diff

5a6
> #include <assert.h>
52c53
< // I think I forgot to include the library assetr
---
> // I think I forgot to include the library assert

Solutions

The best way to learn is to practice. Below, you will find some of the solutions other golfers have entered. To unlock higher ranked solutions, submit your own entry which does as well or better than the solutions you can currently see - climb the ladder!

Check out these helpful resources to improve your Vim skills... Game on.

Unlock 212 remaining solutions by signing in and submitting your own entry
#213 Bennett Bernardoni / @BBernardoni - Score: 115 - 06/29/17 @ 17:42
jjjjo#include <assert.h><Esc>jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjlllllllllllllllllllllllllllhhcwassert<Esc>:x<CR>

@BBernardoni: Sorry for the resubmissions. I caught several solution that I didn't want to be possible. This should be the last one, even if I did miss something.

@zulolosi: You forget to add a header file .h, not a library

@BBernardoni: Yeah, you're right. I meant I forgot to include the header file for a library.

@zulolosi: https://stackoverflow.com/questions/3996651/what-is-compiler-linker-loader

@BBernardoni: I did miss something. My intended solution was "G$xP9%YpWlcwa<C-P><Esc>ZZ" but I forgot 5G would do the same as 9%. In order to do that though I would have had to make the file 101 lines long.

@zulolosi: Nice 9% to have a different approach ...

6 comments


Created by: @BBernardoni

213 active golfers, 887 entries

Leaderboard (lowest score wins):
14
#1 - Peppa Pig / @PeppaPi95550250

07/02/2024 at 09:19AM

14
#2 - John Braxler / @braxler

08/05/2024 at 03:20PM

15
#3 - tPenguinLTG / @tpenguinltg

06/30/2017 at 12:24PM

15
#4 - Barnaby Colby / @BarnabyColby

07/02/2017 at 06:47PM

15
#5 - David / @Revan4Vendetta

07/05/2017 at 10:46AM

15
#6 - Adrian Englhardt / @_englhardt

07/05/2017 at 01:35PM

15
#7 - Cody Heimberger / @certifiedloud

07/08/2017 at 04:26AM

15
#8 - LR / @TextsFromChaCha

07/25/2017 at 07:04AM

15
#9 - Baine Wedlock / @BaineWedlock

08/10/2017 at 07:56PM

15
#10 - Ky Statham / @ijustwannacode

08/15/2017 at 09:42PM

15
#11 - Philippe Brouillard / @_kurowasan

08/17/2017 at 09:52PM

15
#12 - Darren Weston / @dazWestonUK

08/30/2017 at 11:44AM

15
#13 - Birger / @Birger_Ni

10/01/2017 at 06:11PM

15
#14 - Chris Atanasian / @ChrisAtanasian

10/12/2017 at 05:52PM

15
#15 - Wolly Woodpecker / @WollyWoodpecker

11/13/2017 at 08:11PM

15
#16 - Henrique Malheiro / @rike09

12/12/2017 at 12:56AM

15
#17 - ParasamGateZero / @ParasamGateZero

01/21/2018 at 07:35AM

15
#18 - Guirec CORBEL / @GuirecCorbel

03/06/2018 at 02:21AM

15
#19 - Daniƫl De Koker / @daniel_koker

06/17/2018 at 10:41AM

15
#20 - Maas Lalani / @maaslalani

12/06/2018 at 01:10AM

15
#21 - Jonathan Gin / @jonathangin52

12/06/2018 at 01:12AM

15
#22 - Mario Olofo / @mario_olofo

10/24/2019 at 12:45AM

15
#23 - countime / @countime1

03/13/2020 at 10:15AM

15
#24 - A A A / @37fatos

01/17/2021 at 07:59PM

15
#25 - Jung Yeon Park / @park_jungy

01/18/2021 at 08:17PM

15
#26 - Luoyb / @Luoyb

11/16/2023 at 03:28AM

15
#27 - nickGPT / @nickandbro

08/27/2024 at 05:38AM

16
#28 - Urtica dioica / @udioica

06/29/2017 at 07:44PM

16
#29 - Song Zheng / @songz

06/29/2017 at 09:14PM

16
#30 - Saki Gw / @Sakigw

06/29/2017 at 09:42PM